From 3ccad7a22a02ccb4e8000fb690d5808dc76eaaca Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Tue, 12 Nov 2024 05:12:41 +0000 Subject: [PATCH] CodeGen from PR 30980 in Azure/azure-rest-api-specs Merge af08f354112856471cfb773eb9584a223720f282 into fcee3edac78a8afb8a402e4920c395998caf12fb --- .../azure-mgmt-servicebus/_meta.json | 4 +- .../azure/mgmt/servicebus/__init__.py | 4 +- .../azure/mgmt/servicebus/_configuration.py | 39 +- .../azure/mgmt/servicebus/_serialization.py | 18 +- .../_service_bus_management_client.py | 537 ++- .../azure/mgmt/servicebus/aio/__init__.py | 3 +- .../mgmt/servicebus/aio/_configuration.py | 39 +- .../aio/_service_bus_management_client.py | 533 ++- .../mgmt/servicebus/v2015_08_01/__init__.py | 26 - .../servicebus/v2015_08_01/_configuration.py | 66 - .../servicebus/v2015_08_01/_metadata.json | 114 - .../mgmt/servicebus/v2015_08_01/_patch.py | 20 - .../_service_bus_management_client.py | 129 - .../mgmt/servicebus/v2015_08_01/_version.py | 9 - .../servicebus/v2015_08_01/aio/__init__.py | 23 - .../v2015_08_01/aio/_configuration.py | 66 - .../mgmt/servicebus/v2015_08_01/aio/_patch.py | 20 - .../aio/_service_bus_management_client.py | 132 - .../v2015_08_01/aio/operations/__init__.py | 27 - .../aio/operations/_namespaces_operations.py | 1400 ------- .../v2015_08_01/aio/operations/_operations.py | 131 - .../v2015_08_01/aio/operations/_patch.py | 20 - .../aio/operations/_queues_operations.py | 1097 ------ .../operations/_subscriptions_operations.py | 438 --- .../aio/operations/_topics_operations.py | 1106 ------ .../servicebus/v2015_08_01/models/__init__.py | 87 - .../v2015_08_01/models/_models_py3.py | 2096 ---------- .../servicebus/v2015_08_01/models/_patch.py | 20 - .../_service_bus_management_client_enums.py | 94 - .../v2015_08_01/operations/__init__.py | 27 - .../operations/_namespaces_operations.py | 1812 --------- .../v2015_08_01/operations/_operations.py | 152 - .../v2015_08_01/operations/_patch.py | 20 - .../operations/_queues_operations.py | 1504 -------- .../operations/_subscriptions_operations.py | 586 --- .../operations/_topics_operations.py | 1513 -------- .../mgmt/servicebus/v2015_08_01/py.typed | 1 - .../mgmt/servicebus/v2017_04_01/__init__.py | 26 - .../servicebus/v2017_04_01/_configuration.py | 66 - .../servicebus/v2017_04_01/_metadata.json | 120 - .../mgmt/servicebus/v2017_04_01/_patch.py | 20 - .../_service_bus_management_client.py | 170 - .../mgmt/servicebus/v2017_04_01/_version.py | 9 - .../servicebus/v2017_04_01/aio/__init__.py | 23 - .../v2017_04_01/aio/_configuration.py | 66 - .../mgmt/servicebus/v2017_04_01/aio/_patch.py | 20 - .../aio/_service_bus_management_client.py | 173 - .../v2017_04_01/aio/operations/__init__.py | 39 - .../_disaster_recovery_configs_operations.py | 875 ----- .../aio/operations/_event_hubs_operations.py | 141 - .../_migration_configs_operations.py | 610 --- .../aio/operations/_namespaces_operations.py | 1803 --------- .../v2017_04_01/aio/operations/_operations.py | 132 - .../v2017_04_01/aio/operations/_patch.py | 20 - .../_premium_messaging_regions_operations.py | 134 - .../aio/operations/_queues_operations.py | 1045 ----- .../aio/operations/_regions_operations.py | 137 - .../aio/operations/_rules_operations.py | 467 --- .../operations/_subscriptions_operations.py | 454 --- .../aio/operations/_topics_operations.py | 1054 ----- .../servicebus/v2017_04_01/models/__init__.py | 143 - .../v2017_04_01/models/_models_py3.py | 2532 ------------ .../servicebus/v2017_04_01/models/_patch.py | 20 - .../_service_bus_management_client_enums.py | 129 - .../v2017_04_01/operations/__init__.py | 39 - .../_disaster_recovery_configs_operations.py | 1226 ------ .../operations/_event_hubs_operations.py | 176 - .../_migration_configs_operations.py | 831 ---- .../operations/_namespaces_operations.py | 2357 ------------ .../v2017_04_01/operations/_operations.py | 153 - .../v2017_04_01/operations/_patch.py | 20 - .../_premium_messaging_regions_operations.py | 163 - .../operations/_queues_operations.py | 1431 ------- .../operations/_regions_operations.py | 167 - .../operations/_rules_operations.py | 640 ---- .../operations/_subscriptions_operations.py | 618 --- .../operations/_topics_operations.py | 1440 ------- .../mgmt/servicebus/v2017_04_01/py.typed | 1 - .../v2018_01_01_preview/__init__.py | 26 - .../v2018_01_01_preview/_configuration.py | 66 - .../v2018_01_01_preview/_metadata.json | 122 - .../servicebus/v2018_01_01_preview/_patch.py | 20 - .../_service_bus_management_client.py | 196 - .../v2018_01_01_preview/_version.py | 9 - .../v2018_01_01_preview/aio/__init__.py | 23 - .../v2018_01_01_preview/aio/_configuration.py | 66 - .../v2018_01_01_preview/aio/_patch.py | 20 - .../aio/_service_bus_management_client.py | 200 - .../aio/operations/__init__.py | 43 - .../_disaster_recovery_configs_operations.py | 981 ----- .../aio/operations/_event_hubs_operations.py | 143 - .../_migration_configs_operations.py | 631 --- .../aio/operations/_namespaces_operations.py | 2546 ------------- .../aio/operations/_operations.py | 134 - .../aio/operations/_patch.py | 20 - .../_premium_messaging_regions_operations.py | 136 - ...private_endpoint_connections_operations.py | 491 --- .../_private_link_resources_operations.py | 117 - .../aio/operations/_queues_operations.py | 1067 ------ .../aio/operations/_regions_operations.py | 139 - .../aio/operations/_rules_operations.py | 476 --- .../operations/_subscriptions_operations.py | 462 --- .../aio/operations/_topics_operations.py | 1076 ------ .../v2018_01_01_preview/models/__init__.py | 177 - .../v2018_01_01_preview/models/_models_py3.py | 3129 --------------- .../v2018_01_01_preview/models/_patch.py | 20 - .../_service_bus_management_client_enums.py | 156 - .../operations/__init__.py | 43 - .../_disaster_recovery_configs_operations.py | 1335 ------- .../operations/_event_hubs_operations.py | 179 - .../_migration_configs_operations.py | 852 ----- .../operations/_namespaces_operations.py | 3380 ----------------- .../operations/_operations.py | 156 - .../v2018_01_01_preview/operations/_patch.py | 20 - .../_premium_messaging_regions_operations.py | 165 - ...private_endpoint_connections_operations.py | 644 ---- .../_private_link_resources_operations.py | 153 - .../operations/_queues_operations.py | 1453 ------- .../operations/_regions_operations.py | 169 - .../operations/_rules_operations.py | 648 ---- .../operations/_subscriptions_operations.py | 627 --- .../operations/_topics_operations.py | 1462 ------- .../servicebus/v2018_01_01_preview/py.typed | 1 - .../v2021_01_01_preview/__init__.py | 26 - .../v2021_01_01_preview/_configuration.py | 66 - .../v2021_01_01_preview/_metadata.json | 119 - .../servicebus/v2021_01_01_preview/_patch.py | 20 - .../_service_bus_management_client.py | 176 - .../v2021_01_01_preview/_version.py | 9 - .../v2021_01_01_preview/aio/__init__.py | 23 - .../v2021_01_01_preview/aio/_configuration.py | 66 - .../v2021_01_01_preview/aio/_patch.py | 20 - .../aio/_service_bus_management_client.py | 179 - .../aio/operations/__init__.py | 37 - .../_disaster_recovery_configs_operations.py | 981 ----- .../_migration_configs_operations.py | 631 --- .../aio/operations/_namespaces_operations.py | 1717 --------- .../aio/operations/_operations.py | 134 - .../aio/operations/_patch.py | 20 - ...private_endpoint_connections_operations.py | 491 --- .../_private_link_resources_operations.py | 117 - .../aio/operations/_queues_operations.py | 1067 ------ .../aio/operations/_rules_operations.py | 476 --- .../operations/_subscriptions_operations.py | 462 --- .../aio/operations/_topics_operations.py | 1076 ------ .../v2021_01_01_preview/models/__init__.py | 157 - .../v2021_01_01_preview/models/_models_py3.py | 2817 -------------- .../v2021_01_01_preview/models/_patch.py | 20 - .../_service_bus_management_client_enums.py | 150 - .../operations/__init__.py | 37 - .../_disaster_recovery_configs_operations.py | 1335 ------- .../_migration_configs_operations.py | 852 ----- .../operations/_namespaces_operations.py | 2242 ----------- .../operations/_operations.py | 156 - .../v2021_01_01_preview/operations/_patch.py | 20 - ...private_endpoint_connections_operations.py | 644 ---- .../_private_link_resources_operations.py | 153 - .../operations/_queues_operations.py | 1453 ------- .../operations/_rules_operations.py | 648 ---- .../operations/_subscriptions_operations.py | 627 --- .../operations/_topics_operations.py | 1462 ------- .../servicebus/v2021_01_01_preview/py.typed | 1 - .../v2021_06_01_preview/__init__.py | 26 - .../v2021_06_01_preview/_configuration.py | 66 - .../v2021_06_01_preview/_metadata.json | 119 - .../servicebus/v2021_06_01_preview/_patch.py | 20 - .../_service_bus_management_client.py | 176 - .../v2021_06_01_preview/_version.py | 9 - .../v2021_06_01_preview/aio/__init__.py | 23 - .../v2021_06_01_preview/aio/_configuration.py | 66 - .../v2021_06_01_preview/aio/_patch.py | 20 - .../aio/_service_bus_management_client.py | 179 - .../aio/operations/__init__.py | 37 - .../_disaster_recovery_configs_operations.py | 981 ----- .../_migration_configs_operations.py | 631 --- .../aio/operations/_namespaces_operations.py | 1717 --------- .../aio/operations/_operations.py | 134 - .../aio/operations/_patch.py | 20 - ...private_endpoint_connections_operations.py | 491 --- .../_private_link_resources_operations.py | 117 - .../aio/operations/_queues_operations.py | 1067 ------ .../aio/operations/_rules_operations.py | 476 --- .../operations/_subscriptions_operations.py | 462 --- .../aio/operations/_topics_operations.py | 1076 ------ .../v2021_06_01_preview/models/__init__.py | 161 - .../v2021_06_01_preview/models/_models_py3.py | 2932 -------------- .../v2021_06_01_preview/models/_patch.py | 20 - .../_service_bus_management_client_enums.py | 157 - .../operations/__init__.py | 37 - .../_disaster_recovery_configs_operations.py | 1335 ------- .../_migration_configs_operations.py | 852 ----- .../operations/_namespaces_operations.py | 2242 ----------- .../operations/_operations.py | 156 - .../v2021_06_01_preview/operations/_patch.py | 20 - ...private_endpoint_connections_operations.py | 644 ---- .../_private_link_resources_operations.py | 153 - .../operations/_queues_operations.py | 1453 ------- .../operations/_rules_operations.py | 648 ---- .../operations/_subscriptions_operations.py | 627 --- .../operations/_topics_operations.py | 1462 ------- .../servicebus/v2021_06_01_preview/py.typed | 1 - .../mgmt/servicebus/v2021_11_01/__init__.py | 26 - .../servicebus/v2021_11_01/_configuration.py | 66 - .../servicebus/v2021_11_01/_metadata.json | 119 - .../mgmt/servicebus/v2021_11_01/_patch.py | 20 - .../_service_bus_management_client.py | 167 - .../mgmt/servicebus/v2021_11_01/_version.py | 9 - .../servicebus/v2021_11_01/aio/__init__.py | 23 - .../v2021_11_01/aio/_configuration.py | 66 - .../mgmt/servicebus/v2021_11_01/aio/_patch.py | 20 - .../aio/_service_bus_management_client.py | 170 - .../v2021_11_01/aio/operations/__init__.py | 37 - .../_disaster_recovery_configs_operations.py | 958 ----- .../_migration_configs_operations.py | 610 --- .../aio/operations/_namespaces_operations.py | 1678 -------- .../v2021_11_01/aio/operations/_operations.py | 132 - .../v2021_11_01/aio/operations/_patch.py | 20 - ...private_endpoint_connections_operations.py | 481 --- .../_private_link_resources_operations.py | 115 - .../aio/operations/_queues_operations.py | 1045 ----- .../aio/operations/_rules_operations.py | 467 --- .../operations/_subscriptions_operations.py | 454 --- .../aio/operations/_topics_operations.py | 1054 ----- .../servicebus/v2021_11_01/models/__init__.py | 163 - .../v2021_11_01/models/_models_py3.py | 3052 --------------- .../servicebus/v2021_11_01/models/_patch.py | 20 - .../_service_bus_management_client_enums.py | 157 - .../v2021_11_01/operations/__init__.py | 37 - .../_disaster_recovery_configs_operations.py | 1312 ------- .../_migration_configs_operations.py | 831 ---- .../operations/_namespaces_operations.py | 2197 ----------- .../v2021_11_01/operations/_operations.py | 153 - .../v2021_11_01/operations/_patch.py | 20 - ...private_endpoint_connections_operations.py | 634 ---- .../_private_link_resources_operations.py | 151 - .../operations/_queues_operations.py | 1431 ------- .../operations/_rules_operations.py | 640 ---- .../operations/_subscriptions_operations.py | 618 --- .../operations/_topics_operations.py | 1440 ------- .../mgmt/servicebus/v2021_11_01/py.typed | 1 - .../v2022_01_01_preview/__init__.py | 26 - .../v2022_01_01_preview/_configuration.py | 66 - .../v2022_01_01_preview/_metadata.json | 119 - .../servicebus/v2022_01_01_preview/_patch.py | 20 - .../_service_bus_management_client.py | 176 - .../v2022_01_01_preview/_version.py | 9 - .../v2022_01_01_preview/aio/__init__.py | 23 - .../v2022_01_01_preview/aio/_configuration.py | 66 - .../v2022_01_01_preview/aio/_patch.py | 20 - .../aio/_service_bus_management_client.py | 179 - .../aio/operations/__init__.py | 37 - .../_disaster_recovery_configs_operations.py | 979 ----- .../_migration_configs_operations.py | 631 --- .../aio/operations/_namespaces_operations.py | 1717 --------- .../aio/operations/_operations.py | 134 - .../aio/operations/_patch.py | 20 - ...private_endpoint_connections_operations.py | 491 --- .../_private_link_resources_operations.py | 117 - .../aio/operations/_queues_operations.py | 1067 ------ .../aio/operations/_rules_operations.py | 476 --- .../operations/_subscriptions_operations.py | 462 --- .../aio/operations/_topics_operations.py | 1076 ------ .../v2022_01_01_preview/models/__init__.py | 169 - .../v2022_01_01_preview/models/_models_py3.py | 3091 --------------- .../v2022_01_01_preview/models/_patch.py | 20 - .../_service_bus_management_client_enums.py | 179 - .../operations/__init__.py | 37 - .../_disaster_recovery_configs_operations.py | 1333 ------- .../_migration_configs_operations.py | 852 ----- .../operations/_namespaces_operations.py | 2242 ----------- .../operations/_operations.py | 156 - .../v2022_01_01_preview/operations/_patch.py | 20 - ...private_endpoint_connections_operations.py | 644 ---- .../_private_link_resources_operations.py | 153 - .../operations/_queues_operations.py | 1453 ------- .../operations/_rules_operations.py | 648 ---- .../operations/_subscriptions_operations.py | 627 --- .../operations/_topics_operations.py | 1462 ------- .../servicebus/v2022_01_01_preview/py.typed | 1 - .../v2022_10_01_preview/__init__.py | 26 - .../v2022_10_01_preview/_configuration.py | 66 - .../v2022_10_01_preview/_metadata.json | 119 - .../servicebus/v2022_10_01_preview/_patch.py | 20 - .../_service_bus_management_client.py | 176 - .../v2022_10_01_preview/_version.py | 9 - .../v2022_10_01_preview/aio/__init__.py | 23 - .../v2022_10_01_preview/aio/_configuration.py | 66 - .../v2022_10_01_preview/aio/_patch.py | 20 - .../aio/_service_bus_management_client.py | 179 - .../aio/operations/__init__.py | 37 - .../_disaster_recovery_configs_operations.py | 979 ----- .../_migration_configs_operations.py | 631 --- .../aio/operations/_namespaces_operations.py | 1717 --------- .../aio/operations/_operations.py | 134 - .../aio/operations/_patch.py | 20 - ...private_endpoint_connections_operations.py | 491 --- .../_private_link_resources_operations.py | 117 - .../aio/operations/_queues_operations.py | 1067 ------ .../aio/operations/_rules_operations.py | 476 --- .../operations/_subscriptions_operations.py | 462 --- .../aio/operations/_topics_operations.py | 1076 ------ .../v2022_10_01_preview/models/__init__.py | 167 - .../v2022_10_01_preview/models/_models_py3.py | 3108 --------------- .../v2022_10_01_preview/models/_patch.py | 20 - .../_service_bus_management_client_enums.py | 173 - .../operations/__init__.py | 37 - .../_disaster_recovery_configs_operations.py | 1333 ------- .../_migration_configs_operations.py | 852 ----- .../operations/_namespaces_operations.py | 2242 ----------- .../operations/_operations.py | 156 - .../v2022_10_01_preview/operations/_patch.py | 20 - ...private_endpoint_connections_operations.py | 644 ---- .../_private_link_resources_operations.py | 153 - .../operations/_queues_operations.py | 1453 ------- .../operations/_rules_operations.py | 648 ---- .../operations/_subscriptions_operations.py | 627 --- .../operations/_topics_operations.py | 1462 ------- .../servicebus/v2022_10_01_preview/py.typed | 1 - sdk/servicebus/azure-mgmt-servicebus/setup.py | 8 +- 319 files changed, 501 insertions(+), 161188 deletions(-) delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_metadata.json delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_version.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_models_py3.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_service_bus_management_client_enums.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/py.typed delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_metadata.json delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_version.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_event_hubs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_premium_messaging_regions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_regions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_models_py3.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_service_bus_management_client_enums.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_event_hubs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_premium_messaging_regions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_regions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/py.typed delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_metadata.json delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_version.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_event_hubs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_premium_messaging_regions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_regions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_models_py3.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_service_bus_management_client_enums.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_event_hubs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_premium_messaging_regions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_regions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/py.typed delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_metadata.json delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_version.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_models_py3.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_service_bus_management_client_enums.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/py.typed delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_metadata.json delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_version.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_models_py3.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_service_bus_management_client_enums.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/py.typed delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_metadata.json delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_version.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_models_py3.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_service_bus_management_client_enums.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/py.typed delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_metadata.json delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_version.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_models_py3.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_service_bus_management_client_enums.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/py.typed delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_metadata.json delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_version.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_configuration.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_service_bus_management_client.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_models_py3.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_service_bus_management_client_enums.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/__init__.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_disaster_recovery_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_migration_configs_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_namespaces_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_patch.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_private_endpoint_connections_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_private_link_resources_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_queues_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_rules_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_subscriptions_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_topics_operations.py delete mode 100644 sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/py.typed diff --git a/sdk/servicebus/azure-mgmt-servicebus/_meta.json b/sdk/servicebus/azure-mgmt-servicebus/_meta.json index e599b453520e..9f16815f04c2 100644 --- a/sdk/servicebus/azure-mgmt-servicebus/_meta.json +++ b/sdk/servicebus/azure-mgmt-servicebus/_meta.json @@ -1,12 +1,12 @@ { - "commit": "690a7656d65a03b134fa44fc7bb8013dc18a15b5", + "commit": "ae1d5690b2d8331c7a085d3452cfda2e9ea2e908", "repository_url": "https://github.com/Azure/azure-rest-api-specs", "autorest": "3.10.2", "use": [ "@autorest/python@6.19.0", "@autorest/modelerfour@4.27.0" ], - "autorest_command": "autorest specification/servicebus/resource-manager/readme.md --generate-sample=True --generate-test=True --include-x-ms-examples-original-file=True --python --python-sdks-folder=/mnt/vss/_work/1/azure-sdk-for-python/sdk --use=@autorest/python@6.19.0 --use=@autorest/modelerfour@4.27.0 --version=3.10.2 --version-tolerant=False", + "autorest_command": "autorest specification/servicebus/resource-manager/readme.md --generate-sample=True --generate-test=True --include-x-ms-examples-original-file=True --python --python-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-python/sdk --use=@autorest/python@6.19.0 --use=@autorest/modelerfour@4.27.0 --version=3.10.2 --version-tolerant=False", "readme": "specification/servicebus/resource-manager/readme.md", "package-2022-10-preview": "2023-04-13 07:43:12 +0530 9bc5a13776661d0bc699efadece14870e2846d7f Microsoft.ServiceBus/preview/2022-10-01-preview/migrationconfigs.json", "package-2022-01-preview": "2023-04-13 07:43:12 +0530 9bc5a13776661d0bc699efadece14870e2846d7f Microsoft.ServiceBus/preview/2022-01-01-preview/migrationconfigs.json", diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/__init__.py index 9dfc2e6b321b..d3e8cda5f049 100644 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/__init__.py +++ b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/__init__.py @@ -7,12 +7,10 @@ # -------------------------------------------------------------------------- from ._service_bus_management_client import ServiceBusManagementClient - -__all__ = ["ServiceBusManagementClient"] +__all__ = ['ServiceBusManagementClient'] try: from ._patch import patch_sdk # type: ignore - patch_sdk() except ImportError: pass diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_configuration.py index 74a6f2a4f948..d4a7c9a73b2f 100644 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_configuration.py +++ b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_configuration.py @@ -19,7 +19,6 @@ # pylint: disable=unused-import,ungrouped-imports from azure.core.credentials import TokenCredential - class ServiceBusManagementClientConfiguration: """Configuration for ServiceBusManagementClient. @@ -32,7 +31,12 @@ class ServiceBusManagementClientConfiguration: :type subscription_id: str """ - def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any): + def __init__( + self, + credential: "TokenCredential", + subscription_id: str, + **kwargs: Any + ): if credential is None: raise ValueError("Parameter 'credential' must not be None.") if subscription_id is None: @@ -40,22 +44,23 @@ def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs self.credential = credential self.subscription_id = subscription_id - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "azure-mgmt-servicebus/{}".format(VERSION)) + self.credential_scopes = kwargs.pop('credential_scopes', ['https://management.azure.com/.default']) + kwargs.setdefault('sdk_moniker', 'azure-mgmt-servicebus/{}'.format(VERSION)) self.polling_interval = kwargs.get("polling_interval", 30) self._configure(**kwargs) - def _configure(self, **kwargs: Any): - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") + def _configure( + self, + **kwargs: Any + ): + self.user_agent_policy = kwargs.get('user_agent_policy') or policies.UserAgentPolicy(**kwargs) + self.headers_policy = kwargs.get('headers_policy') or policies.HeadersPolicy(**kwargs) + self.proxy_policy = kwargs.get('proxy_policy') or policies.ProxyPolicy(**kwargs) + self.logging_policy = kwargs.get('logging_policy') or policies.NetworkTraceLoggingPolicy(**kwargs) + self.http_logging_policy = kwargs.get('http_logging_policy') or ARMHttpLoggingPolicy(**kwargs) + self.retry_policy = kwargs.get('retry_policy') or policies.RetryPolicy(**kwargs) + self.custom_hook_policy = kwargs.get('custom_hook_policy') or policies.CustomHookPolicy(**kwargs) + self.redirect_policy = kwargs.get('redirect_policy') or policies.RedirectPolicy(**kwargs) + self.authentication_policy = kwargs.get('authentication_policy') if self.credential and not self.authentication_policy: - self.authentication_policy = ARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) + self.authentication_policy = ARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_serialization.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_serialization.py index 8139854b97bb..59f1fcf71bc9 100644 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_serialization.py +++ b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_serialization.py @@ -351,7 +351,9 @@ def serialize(self, keep_readonly: bool = False, **kwargs: Any) -> JSON: def as_dict( self, keep_readonly: bool = True, - key_transformer: Callable[[str, Dict[str, Any], Any], Any] = attribute_transformer, + key_transformer: Callable[ + [str, Dict[str, Any], Any], Any + ] = attribute_transformer, **kwargs: Any ) -> JSON: """Return a dict that can be serialized using json.dump. @@ -540,7 +542,7 @@ class Serializer(object): "multiple": lambda x, y: x % y != 0, } - def __init__(self, classes: Optional[Mapping[str, type]] = None): + def __init__(self, classes: Optional[Mapping[str, type]]=None): self.serialize_type = { "iso-8601": Serializer.serialize_iso, "rfc-1123": Serializer.serialize_rfc, @@ -748,7 +750,7 @@ def query(self, name, data, data_type, **kwargs): # Treat the list aside, since we don't want to encode the div separator if data_type.startswith("["): internal_data_type = data_type[1:-1] - do_quote = not kwargs.get("skip_quote", False) + do_quote = not kwargs.get('skip_quote', False) return self.serialize_iter(data, internal_data_type, do_quote=do_quote, **kwargs) # Not a list, regular serialization @@ -907,8 +909,12 @@ def serialize_iter(self, data, iter_type, div=None, **kwargs): raise serialized.append(None) - if kwargs.get("do_quote", False): - serialized = ["" if s is None else quote(str(s), safe="") for s in serialized] + if kwargs.get('do_quote', False): + serialized = [ + '' if s is None else quote(str(s), safe='') + for s + in serialized + ] if div: serialized = ["" if s is None else str(s) for s in serialized] @@ -1365,7 +1371,7 @@ class Deserializer(object): valid_date = re.compile(r"\d{4}[-]\d{2}[-]\d{2}T\d{2}:\d{2}:\d{2}" r"\.?\d*Z?[-+]?[\d{2}]?:?[\d{2}]?") - def __init__(self, classes: Optional[Mapping[str, type]] = None): + def __init__(self, classes: Optional[Mapping[str, type]]=None): self.deserialize_type = { "iso-8601": Deserializer.deserialize_iso, "rfc-1123": Deserializer.deserialize_rfc, diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_service_bus_management_client.py index 8cf89e2a99cf..e3f05ad1f697 100644 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_service_bus_management_client.py +++ b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/_service_bus_management_client.py @@ -25,7 +25,6 @@ # pylint: disable=unused-import,ungrouped-imports from azure.core.credentials import TokenCredential - class _SDKClient(object): def __init__(self, *args, **kwargs): """This is a fake class to support current implemetation of MultiApiClientMixin." @@ -33,7 +32,6 @@ def __init__(self, *args, **kwargs): """ pass - class ServiceBusManagementClient(MultiApiClientMixin, _SDKClient): """Azure Service Bus client for managing Namespace. @@ -58,31 +56,29 @@ class ServiceBusManagementClient(MultiApiClientMixin, _SDKClient): :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. """ - DEFAULT_API_VERSION = "2021-11-01" + DEFAULT_API_VERSION = '2021-11-01' _PROFILE_TAG = "azure.mgmt.servicebus.ServiceBusManagementClient" - LATEST_PROFILE = ProfileDefinition( - { - _PROFILE_TAG: { - None: DEFAULT_API_VERSION, - "event_hubs": "2017-04-01", - "premium_messaging_regions": "2017-04-01", - "regions": "2017-04-01", - } - }, - _PROFILE_TAG + " latest", + LATEST_PROFILE = ProfileDefinition({ + _PROFILE_TAG: { + None: DEFAULT_API_VERSION, + 'event_hubs': '2017-04-01', + 'premium_messaging_regions': '2017-04-01', + 'regions': '2017-04-01', + }}, + _PROFILE_TAG + " latest" ) def __init__( self, credential: "TokenCredential", subscription_id: str, - api_version: Optional[str] = None, + api_version: Optional[str]=None, base_url: str = "https://management.azure.com", - profile: KnownProfiles = KnownProfiles.default, + profile: KnownProfiles=KnownProfiles.default, **kwargs: Any ): if api_version: - kwargs.setdefault("api_version", api_version) + kwargs.setdefault('api_version', api_version) self._config = ServiceBusManagementClientConfiguration(credential, subscription_id, **kwargs) _policies = kwargs.pop("policies", None) if _policies is None: @@ -103,7 +99,10 @@ def __init__( self._config.http_logging_policy, ] self._client = ARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - super(ServiceBusManagementClient, self).__init__(api_version=api_version, profile=profile) + super(ServiceBusManagementClient, self).__init__( + api_version=api_version, + profile=profile + ) @classmethod def _models_dict(cls, api_version): @@ -113,46 +112,38 @@ def _models_dict(cls, api_version): def models(cls, api_version=DEFAULT_API_VERSION): """Module depends on the API version: - * 2015-08-01: :mod:`v2015_08_01.models` - * 2017-04-01: :mod:`v2017_04_01.models` - * 2018-01-01-preview: :mod:`v2018_01_01_preview.models` - * 2021-01-01-preview: :mod:`v2021_01_01_preview.models` - * 2021-06-01-preview: :mod:`v2021_06_01_preview.models` - * 2021-11-01: :mod:`v2021_11_01.models` - * 2022-01-01-preview: :mod:`v2022_01_01_preview.models` - * 2022-10-01-preview: :mod:`v2022_10_01_preview.models` + * 2015-08-01: :mod:`v2015_08_01.models` + * 2017-04-01: :mod:`v2017_04_01.models` + * 2018-01-01-preview: :mod:`v2018_01_01_preview.models` + * 2021-01-01-preview: :mod:`v2021_01_01_preview.models` + * 2021-06-01-preview: :mod:`v2021_06_01_preview.models` + * 2021-11-01: :mod:`v2021_11_01.models` + * 2022-01-01-preview: :mod:`v2022_01_01_preview.models` + * 2022-10-01-preview: :mod:`v2022_10_01_preview.models` """ - if api_version == "2015-08-01": + if api_version == '2015-08-01': from .v2015_08_01 import models - return models - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from .v2017_04_01 import models - return models - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview import models - return models - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from .v2021_01_01_preview import models - return models - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from .v2021_06_01_preview import models - return models - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from .v2021_11_01 import models - return models - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from .v2022_01_01_preview import models - return models - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from .v2022_10_01_preview import models - return models raise ValueError("API version {} is not available".format(api_version)) @@ -160,474 +151,386 @@ def models(cls, api_version=DEFAULT_API_VERSION): def disaster_recovery_configs(self): """Instance depends on the API version: - * 2017-04-01: :class:`DisasterRecoveryConfigsOperations` - * 2018-01-01-preview: :class:`DisasterRecoveryConfigsOperations` - * 2021-01-01-preview: :class:`DisasterRecoveryConfigsOperations` - * 2021-06-01-preview: :class:`DisasterRecoveryConfigsOperations` - * 2021-11-01: :class:`DisasterRecoveryConfigsOperations` - * 2022-01-01-preview: :class:`DisasterRecoveryConfigsOperations` - * 2022-10-01-preview: :class:`DisasterRecoveryConfigsOperations` + * 2017-04-01: :class:`DisasterRecoveryConfigsOperations` + * 2018-01-01-preview: :class:`DisasterRecoveryConfigsOperations` + * 2021-01-01-preview: :class:`DisasterRecoveryConfigsOperations` + * 2021-06-01-preview: :class:`DisasterRecoveryConfigsOperations` + * 2021-11-01: :class:`DisasterRecoveryConfigsOperations` + * 2022-01-01-preview: :class:`DisasterRecoveryConfigsOperations` + * 2022-10-01-preview: :class:`DisasterRecoveryConfigsOperations` """ - api_version = self._get_api_version("disaster_recovery_configs") - if api_version == "2017-04-01": + api_version = self._get_api_version('disaster_recovery_configs') + if api_version == '2017-04-01': from .v2017_04_01.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from .v2021_01_01_preview.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from .v2021_06_01_preview.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from .v2021_11_01.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from .v2022_01_01_preview.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from .v2022_10_01_preview.operations import DisasterRecoveryConfigsOperations as OperationClass else: - raise ValueError( - "API version {} does not have operation group 'disaster_recovery_configs'".format(api_version) - ) + raise ValueError("API version {} does not have operation group 'disaster_recovery_configs'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def event_hubs(self): """Instance depends on the API version: - * 2017-04-01: :class:`EventHubsOperations` - * 2018-01-01-preview: :class:`EventHubsOperations` + * 2017-04-01: :class:`EventHubsOperations` + * 2018-01-01-preview: :class:`EventHubsOperations` """ - api_version = self._get_api_version("event_hubs") - if api_version == "2017-04-01": + api_version = self._get_api_version('event_hubs') + if api_version == '2017-04-01': from .v2017_04_01.operations import EventHubsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import EventHubsOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'event_hubs'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def migration_configs(self): """Instance depends on the API version: - * 2017-04-01: :class:`MigrationConfigsOperations` - * 2018-01-01-preview: :class:`MigrationConfigsOperations` - * 2021-01-01-preview: :class:`MigrationConfigsOperations` - * 2021-06-01-preview: :class:`MigrationConfigsOperations` - * 2021-11-01: :class:`MigrationConfigsOperations` - * 2022-01-01-preview: :class:`MigrationConfigsOperations` - * 2022-10-01-preview: :class:`MigrationConfigsOperations` + * 2017-04-01: :class:`MigrationConfigsOperations` + * 2018-01-01-preview: :class:`MigrationConfigsOperations` + * 2021-01-01-preview: :class:`MigrationConfigsOperations` + * 2021-06-01-preview: :class:`MigrationConfigsOperations` + * 2021-11-01: :class:`MigrationConfigsOperations` + * 2022-01-01-preview: :class:`MigrationConfigsOperations` + * 2022-10-01-preview: :class:`MigrationConfigsOperations` """ - api_version = self._get_api_version("migration_configs") - if api_version == "2017-04-01": + api_version = self._get_api_version('migration_configs') + if api_version == '2017-04-01': from .v2017_04_01.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from .v2021_01_01_preview.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from .v2021_06_01_preview.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from .v2021_11_01.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from .v2022_01_01_preview.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from .v2022_10_01_preview.operations import MigrationConfigsOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'migration_configs'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def namespaces(self): """Instance depends on the API version: - * 2015-08-01: :class:`NamespacesOperations` - * 2017-04-01: :class:`NamespacesOperations` - * 2018-01-01-preview: :class:`NamespacesOperations` - * 2021-01-01-preview: :class:`NamespacesOperations` - * 2021-06-01-preview: :class:`NamespacesOperations` - * 2021-11-01: :class:`NamespacesOperations` - * 2022-01-01-preview: :class:`NamespacesOperations` - * 2022-10-01-preview: :class:`NamespacesOperations` + * 2015-08-01: :class:`NamespacesOperations` + * 2017-04-01: :class:`NamespacesOperations` + * 2018-01-01-preview: :class:`NamespacesOperations` + * 2021-01-01-preview: :class:`NamespacesOperations` + * 2021-06-01-preview: :class:`NamespacesOperations` + * 2021-11-01: :class:`NamespacesOperations` + * 2022-01-01-preview: :class:`NamespacesOperations` + * 2022-10-01-preview: :class:`NamespacesOperations` """ - api_version = self._get_api_version("namespaces") - if api_version == "2015-08-01": + api_version = self._get_api_version('namespaces') + if api_version == '2015-08-01': from .v2015_08_01.operations import NamespacesOperations as OperationClass - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from .v2017_04_01.operations import NamespacesOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import NamespacesOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from .v2021_01_01_preview.operations import NamespacesOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from .v2021_06_01_preview.operations import NamespacesOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from .v2021_11_01.operations import NamespacesOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from .v2022_01_01_preview.operations import NamespacesOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from .v2022_10_01_preview.operations import NamespacesOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'namespaces'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def operations(self): """Instance depends on the API version: - * 2015-08-01: :class:`Operations` - * 2017-04-01: :class:`Operations` - * 2018-01-01-preview: :class:`Operations` - * 2021-01-01-preview: :class:`Operations` - * 2021-06-01-preview: :class:`Operations` - * 2021-11-01: :class:`Operations` - * 2022-01-01-preview: :class:`Operations` - * 2022-10-01-preview: :class:`Operations` + * 2015-08-01: :class:`Operations` + * 2017-04-01: :class:`Operations` + * 2018-01-01-preview: :class:`Operations` + * 2021-01-01-preview: :class:`Operations` + * 2021-06-01-preview: :class:`Operations` + * 2021-11-01: :class:`Operations` + * 2022-01-01-preview: :class:`Operations` + * 2022-10-01-preview: :class:`Operations` """ - api_version = self._get_api_version("operations") - if api_version == "2015-08-01": + api_version = self._get_api_version('operations') + if api_version == '2015-08-01': from .v2015_08_01.operations import Operations as OperationClass - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from .v2017_04_01.operations import Operations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import Operations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from .v2021_01_01_preview.operations import Operations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from .v2021_06_01_preview.operations import Operations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from .v2021_11_01.operations import Operations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from .v2022_01_01_preview.operations import Operations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from .v2022_10_01_preview.operations import Operations as OperationClass else: raise ValueError("API version {} does not have operation group 'operations'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def premium_messaging_regions(self): """Instance depends on the API version: - * 2017-04-01: :class:`PremiumMessagingRegionsOperations` - * 2018-01-01-preview: :class:`PremiumMessagingRegionsOperations` + * 2017-04-01: :class:`PremiumMessagingRegionsOperations` + * 2018-01-01-preview: :class:`PremiumMessagingRegionsOperations` """ - api_version = self._get_api_version("premium_messaging_regions") - if api_version == "2017-04-01": + api_version = self._get_api_version('premium_messaging_regions') + if api_version == '2017-04-01': from .v2017_04_01.operations import PremiumMessagingRegionsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import PremiumMessagingRegionsOperations as OperationClass else: - raise ValueError( - "API version {} does not have operation group 'premium_messaging_regions'".format(api_version) - ) + raise ValueError("API version {} does not have operation group 'premium_messaging_regions'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def private_endpoint_connections(self): """Instance depends on the API version: - * 2018-01-01-preview: :class:`PrivateEndpointConnectionsOperations` - * 2021-01-01-preview: :class:`PrivateEndpointConnectionsOperations` - * 2021-06-01-preview: :class:`PrivateEndpointConnectionsOperations` - * 2021-11-01: :class:`PrivateEndpointConnectionsOperations` - * 2022-01-01-preview: :class:`PrivateEndpointConnectionsOperations` - * 2022-10-01-preview: :class:`PrivateEndpointConnectionsOperations` + * 2018-01-01-preview: :class:`PrivateEndpointConnectionsOperations` + * 2021-01-01-preview: :class:`PrivateEndpointConnectionsOperations` + * 2021-06-01-preview: :class:`PrivateEndpointConnectionsOperations` + * 2021-11-01: :class:`PrivateEndpointConnectionsOperations` + * 2022-01-01-preview: :class:`PrivateEndpointConnectionsOperations` + * 2022-10-01-preview: :class:`PrivateEndpointConnectionsOperations` """ - api_version = self._get_api_version("private_endpoint_connections") - if api_version == "2018-01-01-preview": + api_version = self._get_api_version('private_endpoint_connections') + if api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import PrivateEndpointConnectionsOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from .v2021_01_01_preview.operations import PrivateEndpointConnectionsOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from .v2021_06_01_preview.operations import PrivateEndpointConnectionsOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from .v2021_11_01.operations import PrivateEndpointConnectionsOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from .v2022_01_01_preview.operations import PrivateEndpointConnectionsOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from .v2022_10_01_preview.operations import PrivateEndpointConnectionsOperations as OperationClass else: - raise ValueError( - "API version {} does not have operation group 'private_endpoint_connections'".format(api_version) - ) + raise ValueError("API version {} does not have operation group 'private_endpoint_connections'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def private_link_resources(self): """Instance depends on the API version: - * 2018-01-01-preview: :class:`PrivateLinkResourcesOperations` - * 2021-01-01-preview: :class:`PrivateLinkResourcesOperations` - * 2021-06-01-preview: :class:`PrivateLinkResourcesOperations` - * 2021-11-01: :class:`PrivateLinkResourcesOperations` - * 2022-01-01-preview: :class:`PrivateLinkResourcesOperations` - * 2022-10-01-preview: :class:`PrivateLinkResourcesOperations` + * 2018-01-01-preview: :class:`PrivateLinkResourcesOperations` + * 2021-01-01-preview: :class:`PrivateLinkResourcesOperations` + * 2021-06-01-preview: :class:`PrivateLinkResourcesOperations` + * 2021-11-01: :class:`PrivateLinkResourcesOperations` + * 2022-01-01-preview: :class:`PrivateLinkResourcesOperations` + * 2022-10-01-preview: :class:`PrivateLinkResourcesOperations` """ - api_version = self._get_api_version("private_link_resources") - if api_version == "2018-01-01-preview": + api_version = self._get_api_version('private_link_resources') + if api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import PrivateLinkResourcesOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from .v2021_01_01_preview.operations import PrivateLinkResourcesOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from .v2021_06_01_preview.operations import PrivateLinkResourcesOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from .v2021_11_01.operations import PrivateLinkResourcesOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from .v2022_01_01_preview.operations import PrivateLinkResourcesOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from .v2022_10_01_preview.operations import PrivateLinkResourcesOperations as OperationClass else: - raise ValueError( - "API version {} does not have operation group 'private_link_resources'".format(api_version) - ) + raise ValueError("API version {} does not have operation group 'private_link_resources'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def queues(self): """Instance depends on the API version: - * 2015-08-01: :class:`QueuesOperations` - * 2017-04-01: :class:`QueuesOperations` - * 2018-01-01-preview: :class:`QueuesOperations` - * 2021-01-01-preview: :class:`QueuesOperations` - * 2021-06-01-preview: :class:`QueuesOperations` - * 2021-11-01: :class:`QueuesOperations` - * 2022-01-01-preview: :class:`QueuesOperations` - * 2022-10-01-preview: :class:`QueuesOperations` + * 2015-08-01: :class:`QueuesOperations` + * 2017-04-01: :class:`QueuesOperations` + * 2018-01-01-preview: :class:`QueuesOperations` + * 2021-01-01-preview: :class:`QueuesOperations` + * 2021-06-01-preview: :class:`QueuesOperations` + * 2021-11-01: :class:`QueuesOperations` + * 2022-01-01-preview: :class:`QueuesOperations` + * 2022-10-01-preview: :class:`QueuesOperations` """ - api_version = self._get_api_version("queues") - if api_version == "2015-08-01": + api_version = self._get_api_version('queues') + if api_version == '2015-08-01': from .v2015_08_01.operations import QueuesOperations as OperationClass - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from .v2017_04_01.operations import QueuesOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import QueuesOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from .v2021_01_01_preview.operations import QueuesOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from .v2021_06_01_preview.operations import QueuesOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from .v2021_11_01.operations import QueuesOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from .v2022_01_01_preview.operations import QueuesOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from .v2022_10_01_preview.operations import QueuesOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'queues'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def regions(self): """Instance depends on the API version: - * 2017-04-01: :class:`RegionsOperations` - * 2018-01-01-preview: :class:`RegionsOperations` + * 2017-04-01: :class:`RegionsOperations` + * 2018-01-01-preview: :class:`RegionsOperations` """ - api_version = self._get_api_version("regions") - if api_version == "2017-04-01": + api_version = self._get_api_version('regions') + if api_version == '2017-04-01': from .v2017_04_01.operations import RegionsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import RegionsOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'regions'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def rules(self): """Instance depends on the API version: - * 2017-04-01: :class:`RulesOperations` - * 2018-01-01-preview: :class:`RulesOperations` - * 2021-01-01-preview: :class:`RulesOperations` - * 2021-06-01-preview: :class:`RulesOperations` - * 2021-11-01: :class:`RulesOperations` - * 2022-01-01-preview: :class:`RulesOperations` - * 2022-10-01-preview: :class:`RulesOperations` + * 2017-04-01: :class:`RulesOperations` + * 2018-01-01-preview: :class:`RulesOperations` + * 2021-01-01-preview: :class:`RulesOperations` + * 2021-06-01-preview: :class:`RulesOperations` + * 2021-11-01: :class:`RulesOperations` + * 2022-01-01-preview: :class:`RulesOperations` + * 2022-10-01-preview: :class:`RulesOperations` """ - api_version = self._get_api_version("rules") - if api_version == "2017-04-01": + api_version = self._get_api_version('rules') + if api_version == '2017-04-01': from .v2017_04_01.operations import RulesOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import RulesOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from .v2021_01_01_preview.operations import RulesOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from .v2021_06_01_preview.operations import RulesOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from .v2021_11_01.operations import RulesOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from .v2022_01_01_preview.operations import RulesOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from .v2022_10_01_preview.operations import RulesOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'rules'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def subscriptions(self): """Instance depends on the API version: - * 2015-08-01: :class:`SubscriptionsOperations` - * 2017-04-01: :class:`SubscriptionsOperations` - * 2018-01-01-preview: :class:`SubscriptionsOperations` - * 2021-01-01-preview: :class:`SubscriptionsOperations` - * 2021-06-01-preview: :class:`SubscriptionsOperations` - * 2021-11-01: :class:`SubscriptionsOperations` - * 2022-01-01-preview: :class:`SubscriptionsOperations` - * 2022-10-01-preview: :class:`SubscriptionsOperations` + * 2015-08-01: :class:`SubscriptionsOperations` + * 2017-04-01: :class:`SubscriptionsOperations` + * 2018-01-01-preview: :class:`SubscriptionsOperations` + * 2021-01-01-preview: :class:`SubscriptionsOperations` + * 2021-06-01-preview: :class:`SubscriptionsOperations` + * 2021-11-01: :class:`SubscriptionsOperations` + * 2022-01-01-preview: :class:`SubscriptionsOperations` + * 2022-10-01-preview: :class:`SubscriptionsOperations` """ - api_version = self._get_api_version("subscriptions") - if api_version == "2015-08-01": + api_version = self._get_api_version('subscriptions') + if api_version == '2015-08-01': from .v2015_08_01.operations import SubscriptionsOperations as OperationClass - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from .v2017_04_01.operations import SubscriptionsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import SubscriptionsOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from .v2021_01_01_preview.operations import SubscriptionsOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from .v2021_06_01_preview.operations import SubscriptionsOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from .v2021_11_01.operations import SubscriptionsOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from .v2022_01_01_preview.operations import SubscriptionsOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from .v2022_10_01_preview.operations import SubscriptionsOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'subscriptions'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def topics(self): """Instance depends on the API version: - * 2015-08-01: :class:`TopicsOperations` - * 2017-04-01: :class:`TopicsOperations` - * 2018-01-01-preview: :class:`TopicsOperations` - * 2021-01-01-preview: :class:`TopicsOperations` - * 2021-06-01-preview: :class:`TopicsOperations` - * 2021-11-01: :class:`TopicsOperations` - * 2022-01-01-preview: :class:`TopicsOperations` - * 2022-10-01-preview: :class:`TopicsOperations` + * 2015-08-01: :class:`TopicsOperations` + * 2017-04-01: :class:`TopicsOperations` + * 2018-01-01-preview: :class:`TopicsOperations` + * 2021-01-01-preview: :class:`TopicsOperations` + * 2021-06-01-preview: :class:`TopicsOperations` + * 2021-11-01: :class:`TopicsOperations` + * 2022-01-01-preview: :class:`TopicsOperations` + * 2022-10-01-preview: :class:`TopicsOperations` """ - api_version = self._get_api_version("topics") - if api_version == "2015-08-01": + api_version = self._get_api_version('topics') + if api_version == '2015-08-01': from .v2015_08_01.operations import TopicsOperations as OperationClass - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from .v2017_04_01.operations import TopicsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from .v2018_01_01_preview.operations import TopicsOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from .v2021_01_01_preview.operations import TopicsOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from .v2021_06_01_preview.operations import TopicsOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from .v2021_11_01.operations import TopicsOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from .v2022_01_01_preview.operations import TopicsOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from .v2022_10_01_preview.operations import TopicsOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'topics'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) def close(self): self._client.close() - def __enter__(self): self._client.__enter__() return self - def __exit__(self, *exc_details): self._client.__exit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/__init__.py index 6d04659df14e..9016cbc21795 100644 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/__init__.py +++ b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/__init__.py @@ -7,5 +7,4 @@ # -------------------------------------------------------------------------- from ._service_bus_management_client import ServiceBusManagementClient - -__all__ = ["ServiceBusManagementClient"] +__all__ = ['ServiceBusManagementClient'] diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/_configuration.py index 4537920a73d4..dc7a778c8d92 100644 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/_configuration.py +++ b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/_configuration.py @@ -19,7 +19,6 @@ # pylint: disable=unused-import,ungrouped-imports from azure.core.credentials_async import AsyncTokenCredential - class ServiceBusManagementClientConfiguration: """Configuration for ServiceBusManagementClient. @@ -32,7 +31,12 @@ class ServiceBusManagementClientConfiguration: :type subscription_id: str """ - def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **kwargs: Any) -> None: + def __init__( + self, + credential: "AsyncTokenCredential", + subscription_id: str, + **kwargs: Any + ) -> None: if credential is None: raise ValueError("Parameter 'credential' must not be None.") if subscription_id is None: @@ -40,22 +44,23 @@ def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **k self.credential = credential self.subscription_id = subscription_id - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "azure-mgmt-servicebus/{}".format(VERSION)) + self.credential_scopes = kwargs.pop('credential_scopes', ['https://management.azure.com/.default']) + kwargs.setdefault('sdk_moniker', 'azure-mgmt-servicebus/{}'.format(VERSION)) self.polling_interval = kwargs.get("polling_interval", 30) self._configure(**kwargs) - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.AsyncRetryPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.AsyncRedirectPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") + def _configure( + self, + **kwargs: Any + ) -> None: + self.user_agent_policy = kwargs.get('user_agent_policy') or policies.UserAgentPolicy(**kwargs) + self.headers_policy = kwargs.get('headers_policy') or policies.HeadersPolicy(**kwargs) + self.proxy_policy = kwargs.get('proxy_policy') or policies.ProxyPolicy(**kwargs) + self.logging_policy = kwargs.get('logging_policy') or policies.NetworkTraceLoggingPolicy(**kwargs) + self.http_logging_policy = kwargs.get('http_logging_policy') or ARMHttpLoggingPolicy(**kwargs) + self.retry_policy = kwargs.get('retry_policy') or policies.AsyncRetryPolicy(**kwargs) + self.custom_hook_policy = kwargs.get('custom_hook_policy') or policies.CustomHookPolicy(**kwargs) + self.redirect_policy = kwargs.get('redirect_policy') or policies.AsyncRedirectPolicy(**kwargs) + self.authentication_policy = kwargs.get('authentication_policy') if self.credential and not self.authentication_policy: - self.authentication_policy = AsyncARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) + self.authentication_policy = AsyncARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/_service_bus_management_client.py index 38e4a6222fa0..82bb3ab9b1d2 100644 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/_service_bus_management_client.py +++ b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/aio/_service_bus_management_client.py @@ -25,7 +25,6 @@ # pylint: disable=unused-import,ungrouped-imports from azure.core.credentials_async import AsyncTokenCredential - class _SDKClient(object): def __init__(self, *args, **kwargs): """This is a fake class to support current implemetation of MultiApiClientMixin." @@ -33,7 +32,6 @@ def __init__(self, *args, **kwargs): """ pass - class ServiceBusManagementClient(MultiApiClientMixin, _SDKClient): """Azure Service Bus client for managing Namespace. @@ -58,18 +56,16 @@ class ServiceBusManagementClient(MultiApiClientMixin, _SDKClient): :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present. """ - DEFAULT_API_VERSION = "2021-11-01" + DEFAULT_API_VERSION = '2021-11-01' _PROFILE_TAG = "azure.mgmt.servicebus.ServiceBusManagementClient" - LATEST_PROFILE = ProfileDefinition( - { - _PROFILE_TAG: { - None: DEFAULT_API_VERSION, - "event_hubs": "2017-04-01", - "premium_messaging_regions": "2017-04-01", - "regions": "2017-04-01", - } - }, - _PROFILE_TAG + " latest", + LATEST_PROFILE = ProfileDefinition({ + _PROFILE_TAG: { + None: DEFAULT_API_VERSION, + 'event_hubs': '2017-04-01', + 'premium_messaging_regions': '2017-04-01', + 'regions': '2017-04-01', + }}, + _PROFILE_TAG + " latest" ) def __init__( @@ -82,7 +78,7 @@ def __init__( **kwargs: Any ) -> None: if api_version: - kwargs.setdefault("api_version", api_version) + kwargs.setdefault('api_version', api_version) self._config = ServiceBusManagementClientConfiguration(credential, subscription_id, **kwargs) _policies = kwargs.pop("policies", None) if _policies is None: @@ -103,7 +99,10 @@ def __init__( self._config.http_logging_policy, ] self._client = AsyncARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - super(ServiceBusManagementClient, self).__init__(api_version=api_version, profile=profile) + super(ServiceBusManagementClient, self).__init__( + api_version=api_version, + profile=profile + ) @classmethod def _models_dict(cls, api_version): @@ -113,46 +112,38 @@ def _models_dict(cls, api_version): def models(cls, api_version=DEFAULT_API_VERSION): """Module depends on the API version: - * 2015-08-01: :mod:`v2015_08_01.models` - * 2017-04-01: :mod:`v2017_04_01.models` - * 2018-01-01-preview: :mod:`v2018_01_01_preview.models` - * 2021-01-01-preview: :mod:`v2021_01_01_preview.models` - * 2021-06-01-preview: :mod:`v2021_06_01_preview.models` - * 2021-11-01: :mod:`v2021_11_01.models` - * 2022-01-01-preview: :mod:`v2022_01_01_preview.models` - * 2022-10-01-preview: :mod:`v2022_10_01_preview.models` + * 2015-08-01: :mod:`v2015_08_01.models` + * 2017-04-01: :mod:`v2017_04_01.models` + * 2018-01-01-preview: :mod:`v2018_01_01_preview.models` + * 2021-01-01-preview: :mod:`v2021_01_01_preview.models` + * 2021-06-01-preview: :mod:`v2021_06_01_preview.models` + * 2021-11-01: :mod:`v2021_11_01.models` + * 2022-01-01-preview: :mod:`v2022_01_01_preview.models` + * 2022-10-01-preview: :mod:`v2022_10_01_preview.models` """ - if api_version == "2015-08-01": + if api_version == '2015-08-01': from ..v2015_08_01 import models - return models - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from ..v2017_04_01 import models - return models - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview import models - return models - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from ..v2021_01_01_preview import models - return models - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from ..v2021_06_01_preview import models - return models - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from ..v2021_11_01 import models - return models - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from ..v2022_01_01_preview import models - return models - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from ..v2022_10_01_preview import models - return models raise ValueError("API version {} is not available".format(api_version)) @@ -160,474 +151,386 @@ def models(cls, api_version=DEFAULT_API_VERSION): def disaster_recovery_configs(self): """Instance depends on the API version: - * 2017-04-01: :class:`DisasterRecoveryConfigsOperations` - * 2018-01-01-preview: :class:`DisasterRecoveryConfigsOperations` - * 2021-01-01-preview: :class:`DisasterRecoveryConfigsOperations` - * 2021-06-01-preview: :class:`DisasterRecoveryConfigsOperations` - * 2021-11-01: :class:`DisasterRecoveryConfigsOperations` - * 2022-01-01-preview: :class:`DisasterRecoveryConfigsOperations` - * 2022-10-01-preview: :class:`DisasterRecoveryConfigsOperations` + * 2017-04-01: :class:`DisasterRecoveryConfigsOperations` + * 2018-01-01-preview: :class:`DisasterRecoveryConfigsOperations` + * 2021-01-01-preview: :class:`DisasterRecoveryConfigsOperations` + * 2021-06-01-preview: :class:`DisasterRecoveryConfigsOperations` + * 2021-11-01: :class:`DisasterRecoveryConfigsOperations` + * 2022-01-01-preview: :class:`DisasterRecoveryConfigsOperations` + * 2022-10-01-preview: :class:`DisasterRecoveryConfigsOperations` """ - api_version = self._get_api_version("disaster_recovery_configs") - if api_version == "2017-04-01": + api_version = self._get_api_version('disaster_recovery_configs') + if api_version == '2017-04-01': from ..v2017_04_01.aio.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from ..v2021_01_01_preview.aio.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from ..v2021_06_01_preview.aio.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from ..v2021_11_01.aio.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from ..v2022_01_01_preview.aio.operations import DisasterRecoveryConfigsOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from ..v2022_10_01_preview.aio.operations import DisasterRecoveryConfigsOperations as OperationClass else: - raise ValueError( - "API version {} does not have operation group 'disaster_recovery_configs'".format(api_version) - ) + raise ValueError("API version {} does not have operation group 'disaster_recovery_configs'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def event_hubs(self): """Instance depends on the API version: - * 2017-04-01: :class:`EventHubsOperations` - * 2018-01-01-preview: :class:`EventHubsOperations` + * 2017-04-01: :class:`EventHubsOperations` + * 2018-01-01-preview: :class:`EventHubsOperations` """ - api_version = self._get_api_version("event_hubs") - if api_version == "2017-04-01": + api_version = self._get_api_version('event_hubs') + if api_version == '2017-04-01': from ..v2017_04_01.aio.operations import EventHubsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import EventHubsOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'event_hubs'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def migration_configs(self): """Instance depends on the API version: - * 2017-04-01: :class:`MigrationConfigsOperations` - * 2018-01-01-preview: :class:`MigrationConfigsOperations` - * 2021-01-01-preview: :class:`MigrationConfigsOperations` - * 2021-06-01-preview: :class:`MigrationConfigsOperations` - * 2021-11-01: :class:`MigrationConfigsOperations` - * 2022-01-01-preview: :class:`MigrationConfigsOperations` - * 2022-10-01-preview: :class:`MigrationConfigsOperations` + * 2017-04-01: :class:`MigrationConfigsOperations` + * 2018-01-01-preview: :class:`MigrationConfigsOperations` + * 2021-01-01-preview: :class:`MigrationConfigsOperations` + * 2021-06-01-preview: :class:`MigrationConfigsOperations` + * 2021-11-01: :class:`MigrationConfigsOperations` + * 2022-01-01-preview: :class:`MigrationConfigsOperations` + * 2022-10-01-preview: :class:`MigrationConfigsOperations` """ - api_version = self._get_api_version("migration_configs") - if api_version == "2017-04-01": + api_version = self._get_api_version('migration_configs') + if api_version == '2017-04-01': from ..v2017_04_01.aio.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from ..v2021_01_01_preview.aio.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from ..v2021_06_01_preview.aio.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from ..v2021_11_01.aio.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from ..v2022_01_01_preview.aio.operations import MigrationConfigsOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from ..v2022_10_01_preview.aio.operations import MigrationConfigsOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'migration_configs'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def namespaces(self): """Instance depends on the API version: - * 2015-08-01: :class:`NamespacesOperations` - * 2017-04-01: :class:`NamespacesOperations` - * 2018-01-01-preview: :class:`NamespacesOperations` - * 2021-01-01-preview: :class:`NamespacesOperations` - * 2021-06-01-preview: :class:`NamespacesOperations` - * 2021-11-01: :class:`NamespacesOperations` - * 2022-01-01-preview: :class:`NamespacesOperations` - * 2022-10-01-preview: :class:`NamespacesOperations` + * 2015-08-01: :class:`NamespacesOperations` + * 2017-04-01: :class:`NamespacesOperations` + * 2018-01-01-preview: :class:`NamespacesOperations` + * 2021-01-01-preview: :class:`NamespacesOperations` + * 2021-06-01-preview: :class:`NamespacesOperations` + * 2021-11-01: :class:`NamespacesOperations` + * 2022-01-01-preview: :class:`NamespacesOperations` + * 2022-10-01-preview: :class:`NamespacesOperations` """ - api_version = self._get_api_version("namespaces") - if api_version == "2015-08-01": + api_version = self._get_api_version('namespaces') + if api_version == '2015-08-01': from ..v2015_08_01.aio.operations import NamespacesOperations as OperationClass - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from ..v2017_04_01.aio.operations import NamespacesOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import NamespacesOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from ..v2021_01_01_preview.aio.operations import NamespacesOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from ..v2021_06_01_preview.aio.operations import NamespacesOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from ..v2021_11_01.aio.operations import NamespacesOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from ..v2022_01_01_preview.aio.operations import NamespacesOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from ..v2022_10_01_preview.aio.operations import NamespacesOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'namespaces'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def operations(self): """Instance depends on the API version: - * 2015-08-01: :class:`Operations` - * 2017-04-01: :class:`Operations` - * 2018-01-01-preview: :class:`Operations` - * 2021-01-01-preview: :class:`Operations` - * 2021-06-01-preview: :class:`Operations` - * 2021-11-01: :class:`Operations` - * 2022-01-01-preview: :class:`Operations` - * 2022-10-01-preview: :class:`Operations` + * 2015-08-01: :class:`Operations` + * 2017-04-01: :class:`Operations` + * 2018-01-01-preview: :class:`Operations` + * 2021-01-01-preview: :class:`Operations` + * 2021-06-01-preview: :class:`Operations` + * 2021-11-01: :class:`Operations` + * 2022-01-01-preview: :class:`Operations` + * 2022-10-01-preview: :class:`Operations` """ - api_version = self._get_api_version("operations") - if api_version == "2015-08-01": + api_version = self._get_api_version('operations') + if api_version == '2015-08-01': from ..v2015_08_01.aio.operations import Operations as OperationClass - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from ..v2017_04_01.aio.operations import Operations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import Operations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from ..v2021_01_01_preview.aio.operations import Operations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from ..v2021_06_01_preview.aio.operations import Operations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from ..v2021_11_01.aio.operations import Operations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from ..v2022_01_01_preview.aio.operations import Operations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from ..v2022_10_01_preview.aio.operations import Operations as OperationClass else: raise ValueError("API version {} does not have operation group 'operations'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def premium_messaging_regions(self): """Instance depends on the API version: - * 2017-04-01: :class:`PremiumMessagingRegionsOperations` - * 2018-01-01-preview: :class:`PremiumMessagingRegionsOperations` + * 2017-04-01: :class:`PremiumMessagingRegionsOperations` + * 2018-01-01-preview: :class:`PremiumMessagingRegionsOperations` """ - api_version = self._get_api_version("premium_messaging_regions") - if api_version == "2017-04-01": + api_version = self._get_api_version('premium_messaging_regions') + if api_version == '2017-04-01': from ..v2017_04_01.aio.operations import PremiumMessagingRegionsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import PremiumMessagingRegionsOperations as OperationClass else: - raise ValueError( - "API version {} does not have operation group 'premium_messaging_regions'".format(api_version) - ) + raise ValueError("API version {} does not have operation group 'premium_messaging_regions'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def private_endpoint_connections(self): """Instance depends on the API version: - * 2018-01-01-preview: :class:`PrivateEndpointConnectionsOperations` - * 2021-01-01-preview: :class:`PrivateEndpointConnectionsOperations` - * 2021-06-01-preview: :class:`PrivateEndpointConnectionsOperations` - * 2021-11-01: :class:`PrivateEndpointConnectionsOperations` - * 2022-01-01-preview: :class:`PrivateEndpointConnectionsOperations` - * 2022-10-01-preview: :class:`PrivateEndpointConnectionsOperations` + * 2018-01-01-preview: :class:`PrivateEndpointConnectionsOperations` + * 2021-01-01-preview: :class:`PrivateEndpointConnectionsOperations` + * 2021-06-01-preview: :class:`PrivateEndpointConnectionsOperations` + * 2021-11-01: :class:`PrivateEndpointConnectionsOperations` + * 2022-01-01-preview: :class:`PrivateEndpointConnectionsOperations` + * 2022-10-01-preview: :class:`PrivateEndpointConnectionsOperations` """ - api_version = self._get_api_version("private_endpoint_connections") - if api_version == "2018-01-01-preview": + api_version = self._get_api_version('private_endpoint_connections') + if api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import PrivateEndpointConnectionsOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from ..v2021_01_01_preview.aio.operations import PrivateEndpointConnectionsOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from ..v2021_06_01_preview.aio.operations import PrivateEndpointConnectionsOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from ..v2021_11_01.aio.operations import PrivateEndpointConnectionsOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from ..v2022_01_01_preview.aio.operations import PrivateEndpointConnectionsOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from ..v2022_10_01_preview.aio.operations import PrivateEndpointConnectionsOperations as OperationClass else: - raise ValueError( - "API version {} does not have operation group 'private_endpoint_connections'".format(api_version) - ) + raise ValueError("API version {} does not have operation group 'private_endpoint_connections'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def private_link_resources(self): """Instance depends on the API version: - * 2018-01-01-preview: :class:`PrivateLinkResourcesOperations` - * 2021-01-01-preview: :class:`PrivateLinkResourcesOperations` - * 2021-06-01-preview: :class:`PrivateLinkResourcesOperations` - * 2021-11-01: :class:`PrivateLinkResourcesOperations` - * 2022-01-01-preview: :class:`PrivateLinkResourcesOperations` - * 2022-10-01-preview: :class:`PrivateLinkResourcesOperations` + * 2018-01-01-preview: :class:`PrivateLinkResourcesOperations` + * 2021-01-01-preview: :class:`PrivateLinkResourcesOperations` + * 2021-06-01-preview: :class:`PrivateLinkResourcesOperations` + * 2021-11-01: :class:`PrivateLinkResourcesOperations` + * 2022-01-01-preview: :class:`PrivateLinkResourcesOperations` + * 2022-10-01-preview: :class:`PrivateLinkResourcesOperations` """ - api_version = self._get_api_version("private_link_resources") - if api_version == "2018-01-01-preview": + api_version = self._get_api_version('private_link_resources') + if api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import PrivateLinkResourcesOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from ..v2021_01_01_preview.aio.operations import PrivateLinkResourcesOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from ..v2021_06_01_preview.aio.operations import PrivateLinkResourcesOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from ..v2021_11_01.aio.operations import PrivateLinkResourcesOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from ..v2022_01_01_preview.aio.operations import PrivateLinkResourcesOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from ..v2022_10_01_preview.aio.operations import PrivateLinkResourcesOperations as OperationClass else: - raise ValueError( - "API version {} does not have operation group 'private_link_resources'".format(api_version) - ) + raise ValueError("API version {} does not have operation group 'private_link_resources'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def queues(self): """Instance depends on the API version: - * 2015-08-01: :class:`QueuesOperations` - * 2017-04-01: :class:`QueuesOperations` - * 2018-01-01-preview: :class:`QueuesOperations` - * 2021-01-01-preview: :class:`QueuesOperations` - * 2021-06-01-preview: :class:`QueuesOperations` - * 2021-11-01: :class:`QueuesOperations` - * 2022-01-01-preview: :class:`QueuesOperations` - * 2022-10-01-preview: :class:`QueuesOperations` + * 2015-08-01: :class:`QueuesOperations` + * 2017-04-01: :class:`QueuesOperations` + * 2018-01-01-preview: :class:`QueuesOperations` + * 2021-01-01-preview: :class:`QueuesOperations` + * 2021-06-01-preview: :class:`QueuesOperations` + * 2021-11-01: :class:`QueuesOperations` + * 2022-01-01-preview: :class:`QueuesOperations` + * 2022-10-01-preview: :class:`QueuesOperations` """ - api_version = self._get_api_version("queues") - if api_version == "2015-08-01": + api_version = self._get_api_version('queues') + if api_version == '2015-08-01': from ..v2015_08_01.aio.operations import QueuesOperations as OperationClass - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from ..v2017_04_01.aio.operations import QueuesOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import QueuesOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from ..v2021_01_01_preview.aio.operations import QueuesOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from ..v2021_06_01_preview.aio.operations import QueuesOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from ..v2021_11_01.aio.operations import QueuesOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from ..v2022_01_01_preview.aio.operations import QueuesOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from ..v2022_10_01_preview.aio.operations import QueuesOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'queues'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def regions(self): """Instance depends on the API version: - * 2017-04-01: :class:`RegionsOperations` - * 2018-01-01-preview: :class:`RegionsOperations` + * 2017-04-01: :class:`RegionsOperations` + * 2018-01-01-preview: :class:`RegionsOperations` """ - api_version = self._get_api_version("regions") - if api_version == "2017-04-01": + api_version = self._get_api_version('regions') + if api_version == '2017-04-01': from ..v2017_04_01.aio.operations import RegionsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import RegionsOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'regions'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def rules(self): """Instance depends on the API version: - * 2017-04-01: :class:`RulesOperations` - * 2018-01-01-preview: :class:`RulesOperations` - * 2021-01-01-preview: :class:`RulesOperations` - * 2021-06-01-preview: :class:`RulesOperations` - * 2021-11-01: :class:`RulesOperations` - * 2022-01-01-preview: :class:`RulesOperations` - * 2022-10-01-preview: :class:`RulesOperations` + * 2017-04-01: :class:`RulesOperations` + * 2018-01-01-preview: :class:`RulesOperations` + * 2021-01-01-preview: :class:`RulesOperations` + * 2021-06-01-preview: :class:`RulesOperations` + * 2021-11-01: :class:`RulesOperations` + * 2022-01-01-preview: :class:`RulesOperations` + * 2022-10-01-preview: :class:`RulesOperations` """ - api_version = self._get_api_version("rules") - if api_version == "2017-04-01": + api_version = self._get_api_version('rules') + if api_version == '2017-04-01': from ..v2017_04_01.aio.operations import RulesOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import RulesOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from ..v2021_01_01_preview.aio.operations import RulesOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from ..v2021_06_01_preview.aio.operations import RulesOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from ..v2021_11_01.aio.operations import RulesOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from ..v2022_01_01_preview.aio.operations import RulesOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from ..v2022_10_01_preview.aio.operations import RulesOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'rules'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def subscriptions(self): """Instance depends on the API version: - * 2015-08-01: :class:`SubscriptionsOperations` - * 2017-04-01: :class:`SubscriptionsOperations` - * 2018-01-01-preview: :class:`SubscriptionsOperations` - * 2021-01-01-preview: :class:`SubscriptionsOperations` - * 2021-06-01-preview: :class:`SubscriptionsOperations` - * 2021-11-01: :class:`SubscriptionsOperations` - * 2022-01-01-preview: :class:`SubscriptionsOperations` - * 2022-10-01-preview: :class:`SubscriptionsOperations` + * 2015-08-01: :class:`SubscriptionsOperations` + * 2017-04-01: :class:`SubscriptionsOperations` + * 2018-01-01-preview: :class:`SubscriptionsOperations` + * 2021-01-01-preview: :class:`SubscriptionsOperations` + * 2021-06-01-preview: :class:`SubscriptionsOperations` + * 2021-11-01: :class:`SubscriptionsOperations` + * 2022-01-01-preview: :class:`SubscriptionsOperations` + * 2022-10-01-preview: :class:`SubscriptionsOperations` """ - api_version = self._get_api_version("subscriptions") - if api_version == "2015-08-01": + api_version = self._get_api_version('subscriptions') + if api_version == '2015-08-01': from ..v2015_08_01.aio.operations import SubscriptionsOperations as OperationClass - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from ..v2017_04_01.aio.operations import SubscriptionsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import SubscriptionsOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from ..v2021_01_01_preview.aio.operations import SubscriptionsOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from ..v2021_06_01_preview.aio.operations import SubscriptionsOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from ..v2021_11_01.aio.operations import SubscriptionsOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from ..v2022_01_01_preview.aio.operations import SubscriptionsOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from ..v2022_10_01_preview.aio.operations import SubscriptionsOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'subscriptions'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) @property def topics(self): """Instance depends on the API version: - * 2015-08-01: :class:`TopicsOperations` - * 2017-04-01: :class:`TopicsOperations` - * 2018-01-01-preview: :class:`TopicsOperations` - * 2021-01-01-preview: :class:`TopicsOperations` - * 2021-06-01-preview: :class:`TopicsOperations` - * 2021-11-01: :class:`TopicsOperations` - * 2022-01-01-preview: :class:`TopicsOperations` - * 2022-10-01-preview: :class:`TopicsOperations` + * 2015-08-01: :class:`TopicsOperations` + * 2017-04-01: :class:`TopicsOperations` + * 2018-01-01-preview: :class:`TopicsOperations` + * 2021-01-01-preview: :class:`TopicsOperations` + * 2021-06-01-preview: :class:`TopicsOperations` + * 2021-11-01: :class:`TopicsOperations` + * 2022-01-01-preview: :class:`TopicsOperations` + * 2022-10-01-preview: :class:`TopicsOperations` """ - api_version = self._get_api_version("topics") - if api_version == "2015-08-01": + api_version = self._get_api_version('topics') + if api_version == '2015-08-01': from ..v2015_08_01.aio.operations import TopicsOperations as OperationClass - elif api_version == "2017-04-01": + elif api_version == '2017-04-01': from ..v2017_04_01.aio.operations import TopicsOperations as OperationClass - elif api_version == "2018-01-01-preview": + elif api_version == '2018-01-01-preview': from ..v2018_01_01_preview.aio.operations import TopicsOperations as OperationClass - elif api_version == "2021-01-01-preview": + elif api_version == '2021-01-01-preview': from ..v2021_01_01_preview.aio.operations import TopicsOperations as OperationClass - elif api_version == "2021-06-01-preview": + elif api_version == '2021-06-01-preview': from ..v2021_06_01_preview.aio.operations import TopicsOperations as OperationClass - elif api_version == "2021-11-01": + elif api_version == '2021-11-01': from ..v2021_11_01.aio.operations import TopicsOperations as OperationClass - elif api_version == "2022-01-01-preview": + elif api_version == '2022-01-01-preview': from ..v2022_01_01_preview.aio.operations import TopicsOperations as OperationClass - elif api_version == "2022-10-01-preview": + elif api_version == '2022-10-01-preview': from ..v2022_10_01_preview.aio.operations import TopicsOperations as OperationClass else: raise ValueError("API version {} does not have operation group 'topics'".format(api_version)) self._config.api_version = api_version - return OperationClass( - self._client, - self._config, - Serializer(self._models_dict(api_version)), - Deserializer(self._models_dict(api_version)), - api_version, - ) + return OperationClass(self._client, self._config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version)), api_version) async def close(self): await self._client.close() - async def __aenter__(self): await self._client.__aenter__() return self - async def __aexit__(self, *exc_details): await self._client.__aexit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/__init__.py deleted file mode 100644 index 2e171d69863b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/__init__.py +++ /dev/null @@ -1,26 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient -from ._version import VERSION - -__version__ = VERSION - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_configuration.py deleted file mode 100644 index ad69515e92c5..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy - -from ._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2015-08-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2015-08-01") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = ARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_metadata.json b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_metadata.json deleted file mode 100644 index bc269cb94114..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_metadata.json +++ /dev/null @@ -1,114 +0,0 @@ -{ - "chosen_version": "2015-08-01", - "total_api_version_list": ["2015-08-01"], - "client": { - "name": "ServiceBusManagementClient", - "filename": "_service_bus_management_client", - "description": "Azure Service Bus client.", - "host_value": "\"https://management.azure.com\"", - "parameterized_host_template": null, - "azure_arm": true, - "has_public_lro_operations": true, - "client_side_validation": false, - "sync_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"ARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \".._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"AsyncARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"AsyncARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \"..._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "global_parameters": { - "sync": { - "credential": { - "signature": "credential: \"TokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials.TokenCredential", - "required": true, - "method_location": "positional" - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true, - "method_location": "positional" - } - }, - "async": { - "credential": { - "signature": "credential: \"AsyncTokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials_async.AsyncTokenCredential", - "required": true - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true - } - }, - "constant": { - }, - "call": "credential, subscription_id", - "service_client_specific": { - "sync": { - "api_version": { - "signature": "api_version: Optional[str]=None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles=KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - }, - "async": { - "api_version": { - "signature": "api_version: Optional[str] = None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles = KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - } - } - }, - "config": { - "credential": true, - "credential_scopes": ["https://management.azure.com/.default"], - "credential_call_sync": "ARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "credential_call_async": "AsyncARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "sync_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMChallengeAuthenticationPolicy\", \"ARMHttpLoggingPolicy\"]}, \"local\": {\"._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMHttpLoggingPolicy\", \"AsyncARMChallengeAuthenticationPolicy\"]}, \"local\": {\".._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "operation_groups": { - "operations": "Operations", - "namespaces": "NamespacesOperations", - "queues": "QueuesOperations", - "topics": "TopicsOperations", - "subscriptions": "SubscriptionsOperations" - } -} diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_service_bus_management_client.py deleted file mode 100644 index 18e8b1e2fd44..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_service_bus_management_client.py +++ /dev/null @@ -1,129 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import HttpRequest, HttpResponse -from azure.mgmt.core import ARMPipelineClient -from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy - -from . import models as _models -from .._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import NamespacesOperations, Operations, QueuesOperations, SubscriptionsOperations, TopicsOperations - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword - """Azure Service Bus client. - - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2015_08_01.operations.Operations - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: azure.mgmt.servicebus.v2015_08_01.operations.NamespacesOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2015_08_01.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2015_08_01.operations.TopicsOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: azure.mgmt.servicebus.v2015_08_01.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2015-08-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "TokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - ARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.operations = Operations(self._client, self._config, self._serialize, self._deserialize, "2015-08-01") - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2015-08-01" - ) - self.queues = QueuesOperations(self._client, self._config, self._serialize, self._deserialize, "2015-08-01") - self.topics = TopicsOperations(self._client, self._config, self._serialize, self._deserialize, "2015-08-01") - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2015-08-01" - ) - - def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.HttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - def close(self) -> None: - self._client.close() - - def __enter__(self) -> Self: - self._client.__enter__() - return self - - def __exit__(self, *exc_details: Any) -> None: - self._client.__exit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_version.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_version.py deleted file mode 100644 index 22d4eb39aa93..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/_version.py +++ /dev/null @@ -1,9 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -VERSION = "8.2.1" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/__init__.py deleted file mode 100644 index 530b8638dfd3..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_configuration.py deleted file mode 100644 index afcc5550a321..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMHttpLoggingPolicy, AsyncARMChallengeAuthenticationPolicy - -from .._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2015-08-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2015-08-01") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.AsyncRedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.AsyncRetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = AsyncARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_service_bus_management_client.py deleted file mode 100644 index fa9596afadcb..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/_service_bus_management_client.py +++ /dev/null @@ -1,132 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, Awaitable, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.mgmt.core import AsyncARMPipelineClient -from azure.mgmt.core.policies import AsyncARMAutoResourceProviderRegistrationPolicy - -from .. import models as _models -from ..._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import NamespacesOperations, Operations, QueuesOperations, SubscriptionsOperations, TopicsOperations - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword - """Azure Service Bus client. - - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2015_08_01.aio.operations.Operations - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: azure.mgmt.servicebus.v2015_08_01.aio.operations.NamespacesOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2015_08_01.aio.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2015_08_01.aio.operations.TopicsOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2015_08_01.aio.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2015-08-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "AsyncTokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - AsyncARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.operations = Operations(self._client, self._config, self._serialize, self._deserialize, "2015-08-01") - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2015-08-01" - ) - self.queues = QueuesOperations(self._client, self._config, self._serialize, self._deserialize, "2015-08-01") - self.topics = TopicsOperations(self._client, self._config, self._serialize, self._deserialize, "2015-08-01") - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2015-08-01" - ) - - def _send_request( - self, request: HttpRequest, *, stream: bool = False, **kwargs: Any - ) -> Awaitable[AsyncHttpResponse]: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = await client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.AsyncHttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - async def close(self) -> None: - await self._client.close() - - async def __aenter__(self) -> Self: - await self._client.__aenter__() - return self - - async def __aexit__(self, *exc_details: Any) -> None: - await self._client.__aexit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/__init__.py deleted file mode 100644 index 2051d27d13ae..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/__init__.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._operations import Operations -from ._namespaces_operations import NamespacesOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "Operations", - "NamespacesOperations", - "QueuesOperations", - "TopicsOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_namespaces_operations.py deleted file mode 100644 index de77a6a2befc..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_namespaces_operations.py +++ /dev/null @@ -1,1400 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._namespaces_operations import ( - build_check_name_availability_request, - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_resource_group_request, - build_list_by_subscription_request, - build_list_keys_request, - build_regenerate_keys_request, - build_update_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2015_08_01.aio.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @overload - async def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.CheckNameAvailability or IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> AsyncIterable["_models.NamespaceResource"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either NamespaceResource or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.NamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("NamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, **kwargs: Any - ) -> AsyncIterable["_models.NamespaceResource"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either NamespaceResource or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.NamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("NamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NamespaceCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NamespaceCreateOrUpdateParameters") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NamespaceCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.NamespaceResource]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either NamespaceResource or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.NamespaceResource]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either NamespaceResource or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NamespaceCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.NamespaceResource]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a - NamespaceCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceCreateOrUpdateParameters - or IO[bytes] - :return: An instance of AsyncLROPoller that returns either NamespaceResource or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NamespaceResource] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("NamespaceResource", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.NamespaceResource].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.NamespaceResource]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> AsyncLROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.NamespaceResource: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NamespaceResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.NamespaceResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NamespaceResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.NamespaceResource]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NamespaceResource or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.NamespaceResource]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NamespaceResource or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.NamespaceResource]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - NamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceUpdateParameters or - IO[bytes] - :return: NamespaceResource or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.NamespaceResource]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("NamespaceResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SharedAccessAuthorizationRuleResource"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SharedAccessAuthorizationRuleResource or the - result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SharedAccessAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a - SharedAccessAuthorizationRuleCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - or IO[bytes] - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SharedAccessAuthorizationRuleCreateOrUpdateParameters") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.ResourceListKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateKeysParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateKeysParameters, IO[bytes]], - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateKeysParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters or - IO[bytes] - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateKeysParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_operations.py deleted file mode 100644 index 81aee9ff7dee..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_operations.py +++ /dev/null @@ -1,131 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._operations import build_list_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2015_08_01.aio.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_queues_operations.py deleted file mode 100644 index 6ee1d16a8822..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_queues_operations.py +++ /dev/null @@ -1,1097 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._queues_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_all_request, - build_list_authorization_rules_request, - build_list_keys_request, - build_post_authorization_rule_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2015_08_01.aio.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_all( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.QueueResource"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either QueueResource or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.QueueResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.QueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_all_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("QueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.QueueCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.QueueResource: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.QueueCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: QueueResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.QueueResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.QueueResource: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: QueueResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.QueueResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.QueueCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.QueueResource: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - QueueCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.QueueCreateOrUpdateParameters or - IO[bytes] - :return: QueueResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.QueueResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.QueueResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "QueueCreateOrUpdateParameters") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("QueueResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> _models.QueueResource: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: QueueResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.QueueResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.QueueResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("QueueResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SharedAccessAuthorizationRuleResource"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SharedAccessAuthorizationRuleResource or the - result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SharedAccessAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a - SharedAccessAuthorizationRuleCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - or IO[bytes] - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SharedAccessAuthorizationRuleCreateOrUpdateParameters") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def post_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - _request = build_post_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.ResourceListKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateKeysParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateKeysParameters, IO[bytes]], - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateKeysParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters or - IO[bytes] - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateKeysParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_subscriptions_operations.py deleted file mode 100644 index 46173d85619b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_subscriptions_operations.py +++ /dev/null @@ -1,438 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._subscriptions_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_all_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2015_08_01.aio.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_all( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SubscriptionResource"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SubscriptionResource or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_all_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SubscriptionCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SubscriptionResource: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SubscriptionResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SubscriptionResource: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SubscriptionResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SubscriptionCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.SubscriptionResource: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SubscriptionCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionCreateOrUpdateParameters or IO[bytes] - :return: SubscriptionResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SubscriptionResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SubscriptionCreateOrUpdateParameters") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SubscriptionResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SubscriptionResource: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SubscriptionResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SubscriptionResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SubscriptionResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_topics_operations.py deleted file mode 100644 index 6f7438a9262a..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/aio/operations/_topics_operations.py +++ /dev/null @@ -1,1106 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._topics_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_all_request, - build_list_authorization_rules_request, - build_list_keys_request, - build_post_authorization_rule_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2015_08_01.aio.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_all( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.TopicResource"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either TopicResource or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.TopicResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.TopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_all_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("TopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.TopicCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.TopicResource: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.TopicCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: TopicResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.TopicResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.TopicResource: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: TopicResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.TopicResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.TopicCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.TopicResource: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a - TopicCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.TopicCreateOrUpdateParameters or - IO[bytes] - :return: TopicResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.TopicResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.TopicResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "TopicCreateOrUpdateParameters") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("TopicResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> _models.TopicResource: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: TopicResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.TopicResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.TopicResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("TopicResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SharedAccessAuthorizationRuleResource"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SharedAccessAuthorizationRuleResource or the - result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SharedAccessAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a - SharedAccessAuthorizationRuleCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - or IO[bytes] - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SharedAccessAuthorizationRuleCreateOrUpdateParameters") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def post_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - _request = build_post_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.ResourceListKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateKeysParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateKeysParameters, IO[bytes]], - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateKeysParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters or - IO[bytes] - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateKeysParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/__init__.py deleted file mode 100644 index 1992ae248260..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/__init__.py +++ /dev/null @@ -1,87 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._models_py3 import CheckNameAvailability -from ._models_py3 import CheckNameAvailabilityResult -from ._models_py3 import MessageCountDetails -from ._models_py3 import NamespaceCreateOrUpdateParameters -from ._models_py3 import NamespaceListResult -from ._models_py3 import NamespaceResource -from ._models_py3 import NamespaceUpdateParameters -from ._models_py3 import Operation -from ._models_py3 import OperationDisplay -from ._models_py3 import OperationListResult -from ._models_py3 import QueueCreateOrUpdateParameters -from ._models_py3 import QueueListResult -from ._models_py3 import QueueResource -from ._models_py3 import RegenerateKeysParameters -from ._models_py3 import Resource -from ._models_py3 import ResourceListKeys -from ._models_py3 import SharedAccessAuthorizationRuleCreateOrUpdateParameters -from ._models_py3 import SharedAccessAuthorizationRuleListResult -from ._models_py3 import SharedAccessAuthorizationRuleResource -from ._models_py3 import Sku -from ._models_py3 import SubscriptionCreateOrUpdateParameters -from ._models_py3 import SubscriptionListResult -from ._models_py3 import SubscriptionResource -from ._models_py3 import TopicCreateOrUpdateParameters -from ._models_py3 import TopicListResult -from ._models_py3 import TopicResource -from ._models_py3 import TrackedResource - -from ._service_bus_management_client_enums import AccessRights -from ._service_bus_management_client_enums import EntityAvailabilityStatus -from ._service_bus_management_client_enums import EntityStatus -from ._service_bus_management_client_enums import NamespaceState -from ._service_bus_management_client_enums import Policykey -from ._service_bus_management_client_enums import SkuName -from ._service_bus_management_client_enums import SkuTier -from ._service_bus_management_client_enums import UnavailableReason -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "CheckNameAvailability", - "CheckNameAvailabilityResult", - "MessageCountDetails", - "NamespaceCreateOrUpdateParameters", - "NamespaceListResult", - "NamespaceResource", - "NamespaceUpdateParameters", - "Operation", - "OperationDisplay", - "OperationListResult", - "QueueCreateOrUpdateParameters", - "QueueListResult", - "QueueResource", - "RegenerateKeysParameters", - "Resource", - "ResourceListKeys", - "SharedAccessAuthorizationRuleCreateOrUpdateParameters", - "SharedAccessAuthorizationRuleListResult", - "SharedAccessAuthorizationRuleResource", - "Sku", - "SubscriptionCreateOrUpdateParameters", - "SubscriptionListResult", - "SubscriptionResource", - "TopicCreateOrUpdateParameters", - "TopicListResult", - "TopicResource", - "TrackedResource", - "AccessRights", - "EntityAvailabilityStatus", - "EntityStatus", - "NamespaceState", - "Policykey", - "SkuName", - "SkuTier", - "UnavailableReason", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_models_py3.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_models_py3.py deleted file mode 100644 index 534a3c2520d0..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_models_py3.py +++ /dev/null @@ -1,2096 +0,0 @@ -# coding=utf-8 -# pylint: disable=too-many-lines -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, Dict, List, Optional, TYPE_CHECKING, Union - -from ... import _serialization - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from .. import models as _models - - -class CheckNameAvailability(_serialization.Model): - """Description of a Check Name availability request properties. - - All required parameters must be populated in order to send to server. - - :ivar name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :vartype name: str - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - } - - def __init__(self, *, name: str, **kwargs: Any) -> None: - """ - :keyword name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :paramtype name: str - """ - super().__init__(**kwargs) - self.name = name - - -class CheckNameAvailabilityResult(_serialization.Model): - """Description of a Check Name availability request properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :vartype name_available: bool - :ivar reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :vartype reason: str or ~azure.mgmt.servicebus.v2015_08_01.models.UnavailableReason - :ivar message: The detailed info regarding the reason associated with the namespace. - :vartype message: str - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "name_available": {"key": "nameAvailable", "type": "bool"}, - "reason": {"key": "reason", "type": "str"}, - "message": {"key": "message", "type": "str"}, - } - - def __init__( - self, - *, - name_available: Optional[bool] = None, - reason: Optional[Union[str, "_models.UnavailableReason"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :paramtype name_available: bool - :keyword reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :paramtype reason: str or ~azure.mgmt.servicebus.v2015_08_01.models.UnavailableReason - """ - super().__init__(**kwargs) - self.name_available = name_available - self.reason = reason - self.message = None - - -class MessageCountDetails(_serialization.Model): - """Message Count Details. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar active_message_count: Number of active messages in the queue, topic, or subscription. - :vartype active_message_count: int - :ivar dead_letter_message_count: Number of messages that are dead lettered. - :vartype dead_letter_message_count: int - :ivar scheduled_message_count: Number of scheduled messages. - :vartype scheduled_message_count: int - :ivar transfer_dead_letter_message_count: Number of messages transferred into dead letters. - :vartype transfer_dead_letter_message_count: int - :ivar transfer_message_count: Number of messages transferred to another queue, topic, or - subscription. - :vartype transfer_message_count: int - """ - - _validation = { - "active_message_count": {"readonly": True}, - "dead_letter_message_count": {"readonly": True}, - "scheduled_message_count": {"readonly": True}, - "transfer_dead_letter_message_count": {"readonly": True}, - "transfer_message_count": {"readonly": True}, - } - - _attribute_map = { - "active_message_count": {"key": "activeMessageCount", "type": "int"}, - "dead_letter_message_count": {"key": "deadLetterMessageCount", "type": "int"}, - "scheduled_message_count": {"key": "scheduledMessageCount", "type": "int"}, - "transfer_dead_letter_message_count": {"key": "transferDeadLetterMessageCount", "type": "int"}, - "transfer_message_count": {"key": "transferMessageCount", "type": "int"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.active_message_count = None - self.dead_letter_message_count = None - self.scheduled_message_count = None - self.transfer_dead_letter_message_count = None - self.transfer_message_count = None - - -class NamespaceCreateOrUpdateParameters(_serialization.Model): - """Parameters supplied to the Create Or Update Namespace operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar location: Namespace location. Required. - :vartype location: str - :ivar sku: SKU of the namespace. - :vartype sku: ~azure.mgmt.servicebus.v2015_08_01.models.Sku - :ivar tags: Namespace tags. - :vartype tags: dict[str, str] - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: State of the namespace. Known values are: "Unknown", "Creating", "Created", - "Activating", "Enabling", "Active", "Disabling", "Disabled", "SoftDeleting", "SoftDeleted", - "Removing", "Removed", and "Failed". - :vartype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceState - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar create_acs_namespace: Indicates whether to create an ACS namespace. - :vartype create_acs_namespace: bool - :ivar enabled: Specifies whether this instance is enabled. - :vartype enabled: bool - """ - - _validation = { - "location": {"required": True}, - "provisioning_state": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "sku": {"key": "sku", "type": "Sku"}, - "tags": {"key": "tags", "type": "{str}"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "create_acs_namespace": {"key": "properties.createACSNamespace", "type": "bool"}, - "enabled": {"key": "properties.enabled", "type": "bool"}, - } - - def __init__( - self, - *, - location: str, - sku: Optional["_models.Sku"] = None, - tags: Optional[Dict[str, str]] = None, - status: Optional[Union[str, "_models.NamespaceState"]] = None, - create_acs_namespace: Optional[bool] = None, - enabled: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Namespace location. Required. - :paramtype location: str - :keyword sku: SKU of the namespace. - :paramtype sku: ~azure.mgmt.servicebus.v2015_08_01.models.Sku - :keyword tags: Namespace tags. - :paramtype tags: dict[str, str] - :keyword status: State of the namespace. Known values are: "Unknown", "Creating", "Created", - "Activating", "Enabling", "Active", "Disabling", "Disabled", "SoftDeleting", "SoftDeleted", - "Removing", "Removed", and "Failed". - :paramtype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceState - :keyword create_acs_namespace: Indicates whether to create an ACS namespace. - :paramtype create_acs_namespace: bool - :keyword enabled: Specifies whether this instance is enabled. - :paramtype enabled: bool - """ - super().__init__(**kwargs) - self.location = location - self.sku = sku - self.tags = tags - self.provisioning_state = None - self.status = status - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.create_acs_namespace = create_acs_namespace - self.enabled = enabled - - -class NamespaceListResult(_serialization.Model): - """The response of the List Namespace operation. - - :ivar value: Result of the List Namespace operation. - :vartype value: list[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Namespaces. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[NamespaceResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.NamespaceResource"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Namespace operation. - :paramtype value: list[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Namespaces. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class Resource(_serialization.Model): - """The Resource definition for other than namespace. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar location: Resource location. - :vartype location: str - :ivar type: Resource type. - :vartype type: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, *, location: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - """ - super().__init__(**kwargs) - self.id = None - self.name = None - self.location = location - self.type = None - - -class TrackedResource(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar location: Resource location. - :vartype location: str - :ivar type: Resource type. - :vartype type: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: Optional[str] = None, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(location=location, **kwargs) - self.tags = tags - - -class NamespaceResource(TrackedResource): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar location: Resource location. - :vartype location: str - :ivar type: Resource type. - :vartype type: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: SKU of the namespace. - :vartype sku: ~azure.mgmt.servicebus.v2015_08_01.models.Sku - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: State of the namespace. Known values are: "Unknown", "Creating", "Created", - "Activating", "Enabling", "Active", "Disabling", "Disabled", "SoftDeleting", "SoftDeleted", - "Removing", "Removed", and "Failed". - :vartype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceState - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar create_acs_namespace: Indicates whether to create an ACS namespace. - :vartype create_acs_namespace: bool - :ivar enabled: Specifies whether this instance is enabled. - :vartype enabled: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "Sku"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "create_acs_namespace": {"key": "properties.createACSNamespace", "type": "bool"}, - "enabled": {"key": "properties.enabled", "type": "bool"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.Sku"] = None, - status: Optional[Union[str, "_models.NamespaceState"]] = None, - create_acs_namespace: Optional[bool] = None, - enabled: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: SKU of the namespace. - :paramtype sku: ~azure.mgmt.servicebus.v2015_08_01.models.Sku - :keyword status: State of the namespace. Known values are: "Unknown", "Creating", "Created", - "Activating", "Enabling", "Active", "Disabling", "Disabled", "SoftDeleting", "SoftDeleted", - "Removing", "Removed", and "Failed". - :paramtype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceState - :keyword create_acs_namespace: Indicates whether to create an ACS namespace. - :paramtype create_acs_namespace: bool - :keyword enabled: Specifies whether this instance is enabled. - :paramtype enabled: bool - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.provisioning_state = None - self.status = status - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.create_acs_namespace = create_acs_namespace - self.enabled = enabled - - -class NamespaceUpdateParameters(_serialization.Model): - """Parameters supplied to the Patch Namespace operation. - - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: The sku of the created namespace. - :vartype sku: ~azure.mgmt.servicebus.v2015_08_01.models.Sku - """ - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "Sku"}, - } - - def __init__( - self, *, tags: Optional[Dict[str, str]] = None, sku: Optional["_models.Sku"] = None, **kwargs: Any - ) -> None: - """ - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: The sku of the created namespace. - :paramtype sku: ~azure.mgmt.servicebus.v2015_08_01.models.Sku - """ - super().__init__(**kwargs) - self.tags = tags - self.sku = sku - - -class Operation(_serialization.Model): - """A ServiceBus REST API operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar name: Operation name: {provider}/{resource}/{operation}. - :vartype name: str - :ivar display: The object that represents the operation. - :vartype display: ~azure.mgmt.servicebus.v2015_08_01.models.OperationDisplay - """ - - _validation = { - "name": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "display": {"key": "display", "type": "OperationDisplay"}, - } - - def __init__(self, *, display: Optional["_models.OperationDisplay"] = None, **kwargs: Any) -> None: - """ - :keyword display: The object that represents the operation. - :paramtype display: ~azure.mgmt.servicebus.v2015_08_01.models.OperationDisplay - """ - super().__init__(**kwargs) - self.name = None - self.display = display - - -class OperationDisplay(_serialization.Model): - """The object that represents the operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provider: Service provider: Microsoft.ServiceBus. - :vartype provider: str - :ivar resource: Resource on which the operation is performed: Invoice, etc. - :vartype resource: str - :ivar operation: Operation type: Read, write, delete, etc. - :vartype operation: str - """ - - _validation = { - "provider": {"readonly": True}, - "resource": {"readonly": True}, - "operation": {"readonly": True}, - } - - _attribute_map = { - "provider": {"key": "provider", "type": "str"}, - "resource": {"key": "resource", "type": "str"}, - "operation": {"key": "operation", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.provider = None - self.resource = None - self.operation = None - - -class OperationListResult(_serialization.Model): - """Result of the request to list ServiceBus operations. It contains a list of operations and a URL - link to get the next set of results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of ServiceBus operations supported by the Microsoft.ServiceBus resource - provider. - :vartype value: list[~azure.mgmt.servicebus.v2015_08_01.models.Operation] - :ivar next_link: URL to get the next set of operation list results if there are any. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Operation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value = None - self.next_link = None - - -class QueueCreateOrUpdateParameters(_serialization.Model): # pylint: disable=too-many-instance-attributes - """Parameters supplied to the Create Or Update Queue operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar name: Queue name. - :vartype name: str - :ivar location: location of the resource. Required. - :vartype location: str - :ivar lock_duration: The duration of a peek-lock; that is, the amount of time that the message - is locked for other receivers. The maximum value for LockDuration is 5 minutes; the default - value is 1 minute. - :vartype lock_duration: str - :ivar accessed_at: Last time a message was sent, or the last time there was a receive request - to this queue. - :vartype accessed_at: ~datetime.datetime - :ivar auto_delete_on_idle: the TimeSpan idle interval after which the queue is automatically - deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: str - :ivar entity_availability_status: Entity availability status for the queue. Known values are: - "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :vartype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :ivar created_at: The exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar default_message_time_to_live: The default message time to live value. This is the - duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: str - :ivar duplicate_detection_history_time_window: TimeSpan structure that defines the duration of - the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: str - :ivar enable_batched_operations: A value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar dead_lettering_on_message_expiration: A value that indicates whether this queue has dead - letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar enable_express: A value that indicates whether Express Entities are enabled. An express - queue holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - :ivar enable_partitioning: A value that indicates whether the queue is to be partitioned across - multiple message brokers. - :vartype enable_partitioning: bool - :ivar is_anonymous_accessible: A value that indicates whether the message is accessible - anonymously. - :vartype is_anonymous_accessible: bool - :ivar max_delivery_count: The maximum delivery count. A message is automatically deadlettered - after this number of deliveries. - :vartype max_delivery_count: int - :ivar max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size of - memory allocated for the queue. - :vartype max_size_in_megabytes: int - :ivar message_count: The number of messages in the queue. - :vartype message_count: int - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2015_08_01.models.MessageCountDetails - :ivar requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar requires_session: A value that indicates whether the queue supports the concept of - sessions. - :vartype requires_session: bool - :ivar size_in_bytes: The size of the queue, in bytes. - :vartype size_in_bytes: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", "Restoring", - "SendDisabled", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - :ivar support_ordering: A value that indicates whether the queue supports ordering. - :vartype support_ordering: bool - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - """ - - _validation = { - "location": {"required": True}, - "accessed_at": {"readonly": True}, - "created_at": {"readonly": True}, - "message_count": {"readonly": True}, - "count_details": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "updated_at": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "lock_duration": {"key": "properties.lockDuration", "type": "str"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "str"}, - "entity_availability_status": {"key": "properties.entityAvailabilityStatus", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "str"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "str", - }, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "is_anonymous_accessible": {"key": "properties.isAnonymousAccessible", "type": "bool"}, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "support_ordering": {"key": "properties.supportOrdering", "type": "bool"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - location: str, - name: Optional[str] = None, - lock_duration: Optional[str] = None, - auto_delete_on_idle: Optional[str] = None, - entity_availability_status: Optional[Union[str, "_models.EntityAvailabilityStatus"]] = None, - default_message_time_to_live: Optional[str] = None, - duplicate_detection_history_time_window: Optional[str] = None, - enable_batched_operations: Optional[bool] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - enable_express: Optional[bool] = None, - enable_partitioning: Optional[bool] = None, - is_anonymous_accessible: Optional[bool] = None, - max_delivery_count: Optional[int] = None, - max_size_in_megabytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - requires_session: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - support_ordering: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Queue name. - :paramtype name: str - :keyword location: location of the resource. Required. - :paramtype location: str - :keyword lock_duration: The duration of a peek-lock; that is, the amount of time that the - message is locked for other receivers. The maximum value for LockDuration is 5 minutes; the - default value is 1 minute. - :paramtype lock_duration: str - :keyword auto_delete_on_idle: the TimeSpan idle interval after which the queue is automatically - deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: str - :keyword entity_availability_status: Entity availability status for the queue. Known values - are: "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :paramtype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :keyword default_message_time_to_live: The default message time to live value. This is the - duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: str - :keyword duplicate_detection_history_time_window: TimeSpan structure that defines the duration - of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: str - :keyword enable_batched_operations: A value that indicates whether server-side batched - operations are enabled. - :paramtype enable_batched_operations: bool - :keyword dead_lettering_on_message_expiration: A value that indicates whether this queue has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword enable_express: A value that indicates whether Express Entities are enabled. An - express queue holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - :keyword enable_partitioning: A value that indicates whether the queue is to be partitioned - across multiple message brokers. - :paramtype enable_partitioning: bool - :keyword is_anonymous_accessible: A value that indicates whether the message is accessible - anonymously. - :paramtype is_anonymous_accessible: bool - :keyword max_delivery_count: The maximum delivery count. A message is automatically - deadlettered after this number of deliveries. - :paramtype max_delivery_count: int - :keyword max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size - of memory allocated for the queue. - :paramtype max_size_in_megabytes: int - :keyword requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword requires_session: A value that indicates whether the queue supports the concept of - sessions. - :paramtype requires_session: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", - "Restoring", "SendDisabled", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - :keyword support_ordering: A value that indicates whether the queue supports ordering. - :paramtype support_ordering: bool - """ - super().__init__(**kwargs) - self.name = name - self.location = location - self.lock_duration = lock_duration - self.accessed_at = None - self.auto_delete_on_idle = auto_delete_on_idle - self.entity_availability_status = entity_availability_status - self.created_at = None - self.default_message_time_to_live = default_message_time_to_live - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.enable_batched_operations = enable_batched_operations - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.enable_express = enable_express - self.enable_partitioning = enable_partitioning - self.is_anonymous_accessible = is_anonymous_accessible - self.max_delivery_count = max_delivery_count - self.max_size_in_megabytes = max_size_in_megabytes - self.message_count = None - self.count_details = None - self.requires_duplicate_detection = requires_duplicate_detection - self.requires_session = requires_session - self.size_in_bytes = None - self.status = status - self.support_ordering = support_ordering - self.updated_at = None - - -class QueueListResult(_serialization.Model): - """The response to the List Queues operation. - - :ivar value: Result of the List Queues operation. - :vartype value: list[~azure.mgmt.servicebus.v2015_08_01.models.QueueResource] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of queues. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[QueueResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.QueueResource"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Queues operation. - :paramtype value: list[~azure.mgmt.servicebus.v2015_08_01.models.QueueResource] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of queues. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class QueueResource(Resource): # pylint: disable=too-many-instance-attributes - """Description of queue Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar location: Resource location. - :vartype location: str - :ivar type: Resource type. - :vartype type: str - :ivar lock_duration: The duration of a peek-lock; that is, the amount of time that the message - is locked for other receivers. The maximum value for LockDuration is 5 minutes; the default - value is 1 minute. - :vartype lock_duration: str - :ivar accessed_at: Last time a message was sent, or the last time there was a receive request - to this queue. - :vartype accessed_at: ~datetime.datetime - :ivar auto_delete_on_idle: the TimeSpan idle interval after which the queue is automatically - deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: str - :ivar entity_availability_status: Entity availability status for the queue. Known values are: - "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :vartype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :ivar created_at: The exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar default_message_time_to_live: The default message time to live value. This is the - duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: str - :ivar duplicate_detection_history_time_window: TimeSpan structure that defines the duration of - the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: str - :ivar enable_batched_operations: A value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar dead_lettering_on_message_expiration: A value that indicates whether this queue has dead - letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar enable_express: A value that indicates whether Express Entities are enabled. An express - queue holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - :ivar enable_partitioning: A value that indicates whether the queue is to be partitioned across - multiple message brokers. - :vartype enable_partitioning: bool - :ivar is_anonymous_accessible: A value that indicates whether the message is accessible - anonymously. - :vartype is_anonymous_accessible: bool - :ivar max_delivery_count: The maximum delivery count. A message is automatically deadlettered - after this number of deliveries. - :vartype max_delivery_count: int - :ivar max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size of - memory allocated for the queue. - :vartype max_size_in_megabytes: int - :ivar message_count: The number of messages in the queue. - :vartype message_count: int - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2015_08_01.models.MessageCountDetails - :ivar requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar requires_session: A value that indicates whether the queue supports the concept of - sessions. - :vartype requires_session: bool - :ivar size_in_bytes: The size of the queue, in bytes. - :vartype size_in_bytes: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", "Restoring", - "SendDisabled", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - :ivar support_ordering: A value that indicates whether the queue supports ordering. - :vartype support_ordering: bool - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "accessed_at": {"readonly": True}, - "created_at": {"readonly": True}, - "message_count": {"readonly": True}, - "count_details": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "updated_at": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "lock_duration": {"key": "properties.lockDuration", "type": "str"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "str"}, - "entity_availability_status": {"key": "properties.entityAvailabilityStatus", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "str"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "str", - }, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "is_anonymous_accessible": {"key": "properties.isAnonymousAccessible", "type": "bool"}, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "support_ordering": {"key": "properties.supportOrdering", "type": "bool"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - location: Optional[str] = None, - lock_duration: Optional[str] = None, - auto_delete_on_idle: Optional[str] = None, - entity_availability_status: Optional[Union[str, "_models.EntityAvailabilityStatus"]] = None, - default_message_time_to_live: Optional[str] = None, - duplicate_detection_history_time_window: Optional[str] = None, - enable_batched_operations: Optional[bool] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - enable_express: Optional[bool] = None, - enable_partitioning: Optional[bool] = None, - is_anonymous_accessible: Optional[bool] = None, - max_delivery_count: Optional[int] = None, - max_size_in_megabytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - requires_session: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - support_ordering: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword lock_duration: The duration of a peek-lock; that is, the amount of time that the - message is locked for other receivers. The maximum value for LockDuration is 5 minutes; the - default value is 1 minute. - :paramtype lock_duration: str - :keyword auto_delete_on_idle: the TimeSpan idle interval after which the queue is automatically - deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: str - :keyword entity_availability_status: Entity availability status for the queue. Known values - are: "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :paramtype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :keyword default_message_time_to_live: The default message time to live value. This is the - duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: str - :keyword duplicate_detection_history_time_window: TimeSpan structure that defines the duration - of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: str - :keyword enable_batched_operations: A value that indicates whether server-side batched - operations are enabled. - :paramtype enable_batched_operations: bool - :keyword dead_lettering_on_message_expiration: A value that indicates whether this queue has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword enable_express: A value that indicates whether Express Entities are enabled. An - express queue holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - :keyword enable_partitioning: A value that indicates whether the queue is to be partitioned - across multiple message brokers. - :paramtype enable_partitioning: bool - :keyword is_anonymous_accessible: A value that indicates whether the message is accessible - anonymously. - :paramtype is_anonymous_accessible: bool - :keyword max_delivery_count: The maximum delivery count. A message is automatically - deadlettered after this number of deliveries. - :paramtype max_delivery_count: int - :keyword max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size - of memory allocated for the queue. - :paramtype max_size_in_megabytes: int - :keyword requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword requires_session: A value that indicates whether the queue supports the concept of - sessions. - :paramtype requires_session: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", - "Restoring", "SendDisabled", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - :keyword support_ordering: A value that indicates whether the queue supports ordering. - :paramtype support_ordering: bool - """ - super().__init__(location=location, **kwargs) - self.lock_duration = lock_duration - self.accessed_at = None - self.auto_delete_on_idle = auto_delete_on_idle - self.entity_availability_status = entity_availability_status - self.created_at = None - self.default_message_time_to_live = default_message_time_to_live - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.enable_batched_operations = enable_batched_operations - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.enable_express = enable_express - self.enable_partitioning = enable_partitioning - self.is_anonymous_accessible = is_anonymous_accessible - self.max_delivery_count = max_delivery_count - self.max_size_in_megabytes = max_size_in_megabytes - self.message_count = None - self.count_details = None - self.requires_duplicate_detection = requires_duplicate_detection - self.requires_session = requires_session - self.size_in_bytes = None - self.status = status - self.support_ordering = support_ordering - self.updated_at = None - - -class RegenerateKeysParameters(_serialization.Model): - """Parameters supplied to the Regenerate Authorization Rule operation. - - :ivar policykey: Key that needs to be regenerated. Known values are: "PrimaryKey" and - "SecondaryKey". - :vartype policykey: str or ~azure.mgmt.servicebus.v2015_08_01.models.Policykey - """ - - _attribute_map = { - "policykey": {"key": "Policykey", "type": "str"}, - } - - def __init__(self, *, policykey: Optional[Union[str, "_models.Policykey"]] = None, **kwargs: Any) -> None: - """ - :keyword policykey: Key that needs to be regenerated. Known values are: "PrimaryKey" and - "SecondaryKey". - :paramtype policykey: str or ~azure.mgmt.servicebus.v2015_08_01.models.Policykey - """ - super().__init__(**kwargs) - self.policykey = policykey - - -class ResourceListKeys(_serialization.Model): - """Namespace/ServiceBus Connection String. - - :ivar primary_connection_string: Primary connection string of the created namespace - authorization rule. - :vartype primary_connection_string: str - :ivar secondary_connection_string: Secondary connection string of the created namespace - authorization rule. - :vartype secondary_connection_string: str - :ivar primary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype primary_key: str - :ivar secondary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype secondary_key: str - :ivar key_name: A string that describes the authorization rule. - :vartype key_name: str - """ - - _attribute_map = { - "primary_connection_string": {"key": "primaryConnectionString", "type": "str"}, - "secondary_connection_string": {"key": "secondaryConnectionString", "type": "str"}, - "primary_key": {"key": "primaryKey", "type": "str"}, - "secondary_key": {"key": "secondaryKey", "type": "str"}, - "key_name": {"key": "keyName", "type": "str"}, - } - - def __init__( - self, - *, - primary_connection_string: Optional[str] = None, - secondary_connection_string: Optional[str] = None, - primary_key: Optional[str] = None, - secondary_key: Optional[str] = None, - key_name: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword primary_connection_string: Primary connection string of the created namespace - authorization rule. - :paramtype primary_connection_string: str - :keyword secondary_connection_string: Secondary connection string of the created namespace - authorization rule. - :paramtype secondary_connection_string: str - :keyword primary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :paramtype primary_key: str - :keyword secondary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :paramtype secondary_key: str - :keyword key_name: A string that describes the authorization rule. - :paramtype key_name: str - """ - super().__init__(**kwargs) - self.primary_connection_string = primary_connection_string - self.secondary_connection_string = secondary_connection_string - self.primary_key = primary_key - self.secondary_key = secondary_key - self.key_name = key_name - - -class SharedAccessAuthorizationRuleCreateOrUpdateParameters(_serialization.Model): # pylint: disable=name-too-long - """Parameters supplied to the Create Or Update Authorization Rules operation. - - :ivar location: data center location. - :vartype location: str - :ivar name: Name of the authorization rule. - :vartype name: str - :ivar rights: The rights associated with the rule. - :vartype rights: list[str or ~azure.mgmt.servicebus.v2015_08_01.models.AccessRights] - """ - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "rights": {"key": "properties.rights", "type": "[str]"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - name: Optional[str] = None, - rights: Optional[List[Union[str, "_models.AccessRights"]]] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: data center location. - :paramtype location: str - :keyword name: Name of the authorization rule. - :paramtype name: str - :keyword rights: The rights associated with the rule. - :paramtype rights: list[str or ~azure.mgmt.servicebus.v2015_08_01.models.AccessRights] - """ - super().__init__(**kwargs) - self.location = location - self.name = name - self.rights = rights - - -class SharedAccessAuthorizationRuleListResult(_serialization.Model): - """The response to the List Namespace operation. - - :ivar value: Result of the List Authorization Rules operation. - :vartype value: - list[~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Authorization Rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SharedAccessAuthorizationRuleResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.SharedAccessAuthorizationRuleResource"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Authorization Rules operation. - :paramtype value: - list[~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Authorization Rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SharedAccessAuthorizationRuleResource(Resource): - """Description of a namespace authorization rule. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar location: Resource location. - :vartype location: str - :ivar type: Resource type. - :vartype type: str - :ivar rights: The rights associated with the rule. - :vartype rights: list[str or ~azure.mgmt.servicebus.v2015_08_01.models.AccessRights] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "rights": {"key": "properties.rights", "type": "[str]"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - rights: Optional[List[Union[str, "_models.AccessRights"]]] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword rights: The rights associated with the rule. - :paramtype rights: list[str or ~azure.mgmt.servicebus.v2015_08_01.models.AccessRights] - """ - super().__init__(location=location, **kwargs) - self.rights = rights - - -class Sku(_serialization.Model): - """SKU of the namespace. - - All required parameters must be populated in order to send to server. - - :ivar name: Name of this SKU. Known values are: "Basic", "Standard", and "Premium". - :vartype name: str or ~azure.mgmt.servicebus.v2015_08_01.models.SkuName - :ivar tier: The billing tier of this particular SKU. Required. Known values are: "Basic", - "Standard", and "Premium". - :vartype tier: str or ~azure.mgmt.servicebus.v2015_08_01.models.SkuTier - :ivar capacity: The specified messaging units for the tier. - :vartype capacity: int - """ - - _validation = { - "tier": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "tier": {"key": "tier", "type": "str"}, - "capacity": {"key": "capacity", "type": "int"}, - } - - def __init__( - self, - *, - tier: Union[str, "_models.SkuTier"], - name: Optional[Union[str, "_models.SkuName"]] = None, - capacity: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Name of this SKU. Known values are: "Basic", "Standard", and "Premium". - :paramtype name: str or ~azure.mgmt.servicebus.v2015_08_01.models.SkuName - :keyword tier: The billing tier of this particular SKU. Required. Known values are: "Basic", - "Standard", and "Premium". - :paramtype tier: str or ~azure.mgmt.servicebus.v2015_08_01.models.SkuTier - :keyword capacity: The specified messaging units for the tier. - :paramtype capacity: int - """ - super().__init__(**kwargs) - self.name = name - self.tier = tier - self.capacity = capacity - - -class SubscriptionCreateOrUpdateParameters(_serialization.Model): # pylint: disable=too-many-instance-attributes - """Parameters supplied to the Create Or Update Subscription operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar location: Subscription data center location. Required. - :vartype location: str - :ivar type: Resource manager type of the resource. - :vartype type: str - :ivar accessed_at: Last time there was a receive request to this subscription. - :vartype accessed_at: ~datetime.datetime - :ivar auto_delete_on_idle: TimeSpan idle interval after which the topic is automatically - deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: str - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2015_08_01.models.MessageCountDetails - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar default_message_time_to_live: Default message time to live value. This is the duration - after which the message expires, starting from when the message is sent to Service Bus. This is - the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: str - :ivar dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :vartype dead_lettering_on_filter_evaluation_exceptions: bool - :ivar dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar entity_availability_status: Entity availability status for the topic. Known values are: - "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :vartype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :ivar is_read_only: Value that indicates whether the entity description is read-only. - :vartype is_read_only: bool - :ivar lock_duration: The lock duration time span for the subscription. - :vartype lock_duration: str - :ivar max_delivery_count: Number of maximum deliveries. - :vartype max_delivery_count: int - :ivar message_count: Number of messages. - :vartype message_count: int - :ivar requires_session: Value indicating if a subscription supports the concept of sessions. - :vartype requires_session: bool - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", "Restoring", - "SendDisabled", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - """ - - _validation = { - "location": {"required": True}, - "accessed_at": {"readonly": True}, - "count_details": {"readonly": True}, - "created_at": {"readonly": True}, - "message_count": {"readonly": True}, - "updated_at": {"readonly": True}, - } - - _attribute_map = { - "location": {"key": "location", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "str"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "str"}, - "dead_lettering_on_filter_evaluation_exceptions": { - "key": "properties.deadLetteringOnFilterEvaluationExceptions", - "type": "bool", - }, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "entity_availability_status": {"key": "properties.entityAvailabilityStatus", "type": "str"}, - "is_read_only": {"key": "properties.isReadOnly", "type": "bool"}, - "lock_duration": {"key": "properties.lockDuration", "type": "str"}, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "status": {"key": "properties.status", "type": "str"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - } - - def __init__( - self, - *, - location: str, - type: Optional[str] = None, - auto_delete_on_idle: Optional[str] = None, - default_message_time_to_live: Optional[str] = None, - dead_lettering_on_filter_evaluation_exceptions: Optional[bool] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - enable_batched_operations: Optional[bool] = None, - entity_availability_status: Optional[Union[str, "_models.EntityAvailabilityStatus"]] = None, - is_read_only: Optional[bool] = None, - lock_duration: Optional[str] = None, - max_delivery_count: Optional[int] = None, - requires_session: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Subscription data center location. Required. - :paramtype location: str - :keyword type: Resource manager type of the resource. - :paramtype type: str - :keyword auto_delete_on_idle: TimeSpan idle interval after which the topic is automatically - deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: str - :keyword default_message_time_to_live: Default message time to live value. This is the duration - after which the message expires, starting from when the message is sent to Service Bus. This is - the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: str - :keyword dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :paramtype dead_lettering_on_filter_evaluation_exceptions: bool - :keyword dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword entity_availability_status: Entity availability status for the topic. Known values - are: "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :paramtype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :keyword is_read_only: Value that indicates whether the entity description is read-only. - :paramtype is_read_only: bool - :keyword lock_duration: The lock duration time span for the subscription. - :paramtype lock_duration: str - :keyword max_delivery_count: Number of maximum deliveries. - :paramtype max_delivery_count: int - :keyword requires_session: Value indicating if a subscription supports the concept of sessions. - :paramtype requires_session: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", - "Restoring", "SendDisabled", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - """ - super().__init__(**kwargs) - self.location = location - self.type = type - self.accessed_at = None - self.auto_delete_on_idle = auto_delete_on_idle - self.count_details = None - self.created_at = None - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_filter_evaluation_exceptions = dead_lettering_on_filter_evaluation_exceptions - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.enable_batched_operations = enable_batched_operations - self.entity_availability_status = entity_availability_status - self.is_read_only = is_read_only - self.lock_duration = lock_duration - self.max_delivery_count = max_delivery_count - self.message_count = None - self.requires_session = requires_session - self.status = status - self.updated_at = None - - -class SubscriptionListResult(_serialization.Model): - """The response to the List Subscriptions operation. - - :ivar value: Result of the List Subscriptions operation. - :vartype value: list[~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of subscriptions. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SubscriptionResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.SubscriptionResource"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Subscriptions operation. - :paramtype value: list[~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of subscriptions. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SubscriptionResource(Resource): # pylint: disable=too-many-instance-attributes - """Description of subscription resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar location: Resource location. - :vartype location: str - :ivar type: Resource type. - :vartype type: str - :ivar accessed_at: Last time there was a receive request to this subscription. - :vartype accessed_at: ~datetime.datetime - :ivar auto_delete_on_idle: TimeSpan idle interval after which the topic is automatically - deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: str - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2015_08_01.models.MessageCountDetails - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar default_message_time_to_live: Default message time to live value. This is the duration - after which the message expires, starting from when the message is sent to Service Bus. This is - the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: str - :ivar dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :vartype dead_lettering_on_filter_evaluation_exceptions: bool - :ivar dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar entity_availability_status: Entity availability status for the topic. Known values are: - "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :vartype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :ivar is_read_only: Value that indicates whether the entity description is read-only. - :vartype is_read_only: bool - :ivar lock_duration: The lock duration time span for the subscription. - :vartype lock_duration: str - :ivar max_delivery_count: Number of maximum deliveries. - :vartype max_delivery_count: int - :ivar message_count: Number of messages. - :vartype message_count: int - :ivar requires_session: Value indicating if a subscription supports the concept of sessions. - :vartype requires_session: bool - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", "Restoring", - "SendDisabled", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "accessed_at": {"readonly": True}, - "count_details": {"readonly": True}, - "created_at": {"readonly": True}, - "message_count": {"readonly": True}, - "updated_at": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "str"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "str"}, - "dead_lettering_on_filter_evaluation_exceptions": { - "key": "properties.deadLetteringOnFilterEvaluationExceptions", - "type": "bool", - }, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "entity_availability_status": {"key": "properties.entityAvailabilityStatus", "type": "str"}, - "is_read_only": {"key": "properties.isReadOnly", "type": "bool"}, - "lock_duration": {"key": "properties.lockDuration", "type": "str"}, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "status": {"key": "properties.status", "type": "str"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - auto_delete_on_idle: Optional[str] = None, - default_message_time_to_live: Optional[str] = None, - dead_lettering_on_filter_evaluation_exceptions: Optional[bool] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - enable_batched_operations: Optional[bool] = None, - entity_availability_status: Optional[Union[str, "_models.EntityAvailabilityStatus"]] = None, - is_read_only: Optional[bool] = None, - lock_duration: Optional[str] = None, - max_delivery_count: Optional[int] = None, - requires_session: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword auto_delete_on_idle: TimeSpan idle interval after which the topic is automatically - deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: str - :keyword default_message_time_to_live: Default message time to live value. This is the duration - after which the message expires, starting from when the message is sent to Service Bus. This is - the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: str - :keyword dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :paramtype dead_lettering_on_filter_evaluation_exceptions: bool - :keyword dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword entity_availability_status: Entity availability status for the topic. Known values - are: "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :paramtype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :keyword is_read_only: Value that indicates whether the entity description is read-only. - :paramtype is_read_only: bool - :keyword lock_duration: The lock duration time span for the subscription. - :paramtype lock_duration: str - :keyword max_delivery_count: Number of maximum deliveries. - :paramtype max_delivery_count: int - :keyword requires_session: Value indicating if a subscription supports the concept of sessions. - :paramtype requires_session: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", - "Restoring", "SendDisabled", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - """ - super().__init__(location=location, **kwargs) - self.accessed_at = None - self.auto_delete_on_idle = auto_delete_on_idle - self.count_details = None - self.created_at = None - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_filter_evaluation_exceptions = dead_lettering_on_filter_evaluation_exceptions - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.enable_batched_operations = enable_batched_operations - self.entity_availability_status = entity_availability_status - self.is_read_only = is_read_only - self.lock_duration = lock_duration - self.max_delivery_count = max_delivery_count - self.message_count = None - self.requires_session = requires_session - self.status = status - self.updated_at = None - - -class TopicCreateOrUpdateParameters(_serialization.Model): # pylint: disable=too-many-instance-attributes - """Parameters supplied to the Create Or Update Topic operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar name: Topic name. - :vartype name: str - :ivar location: Location of the resource. Required. - :vartype location: str - :ivar accessed_at: Last time the message was sent, or a request was received, for this topic. - :vartype accessed_at: ~datetime.datetime - :ivar auto_delete_on_idle: TimeSpan idle interval after which the topic is automatically - deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: str - :ivar entity_availability_status: Entity availability status for the topic. Known values are: - "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :vartype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2015_08_01.models.MessageCountDetails - :ivar default_message_time_to_live: Default message time to live value. This is the duration - after which the message expires, starting from when the message is sent to Service Bus. This is - the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: str - :ivar duplicate_detection_history_time_window: TimeSpan structure that defines the duration of - the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: str - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - :ivar enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :vartype enable_partitioning: bool - :ivar filtering_messages_before_publishing: Whether messages should be filtered before - publishing. - :vartype filtering_messages_before_publishing: bool - :ivar is_anonymous_accessible: Value that indicates whether the message is accessible - anonymously. - :vartype is_anonymous_accessible: bool - :ivar is_express: - :vartype is_express: bool - :ivar max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of the - memory allocated for the topic. - :vartype max_size_in_megabytes: int - :ivar requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar size_in_bytes: Size of the topic, in bytes. - :vartype size_in_bytes: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", "Restoring", - "SendDisabled", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - :ivar subscription_count: Number of subscriptions. - :vartype subscription_count: int - :ivar support_ordering: Value that indicates whether the topic supports ordering. - :vartype support_ordering: bool - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - """ - - _validation = { - "location": {"required": True}, - "accessed_at": {"readonly": True}, - "created_at": {"readonly": True}, - "count_details": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "subscription_count": {"readonly": True}, - "updated_at": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "str"}, - "entity_availability_status": {"key": "properties.entityAvailabilityStatus", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "str"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "str", - }, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "filtering_messages_before_publishing": {"key": "properties.filteringMessagesBeforePublishing", "type": "bool"}, - "is_anonymous_accessible": {"key": "properties.isAnonymousAccessible", "type": "bool"}, - "is_express": {"key": "properties.isExpress", "type": "bool"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "subscription_count": {"key": "properties.subscriptionCount", "type": "int"}, - "support_ordering": {"key": "properties.supportOrdering", "type": "bool"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - } - - def __init__( - self, - *, - location: str, - name: Optional[str] = None, - auto_delete_on_idle: Optional[str] = None, - entity_availability_status: Optional[Union[str, "_models.EntityAvailabilityStatus"]] = None, - default_message_time_to_live: Optional[str] = None, - duplicate_detection_history_time_window: Optional[str] = None, - enable_batched_operations: Optional[bool] = None, - enable_express: Optional[bool] = None, - enable_partitioning: Optional[bool] = None, - filtering_messages_before_publishing: Optional[bool] = None, - is_anonymous_accessible: Optional[bool] = None, - is_express: Optional[bool] = None, - max_size_in_megabytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - support_ordering: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Topic name. - :paramtype name: str - :keyword location: Location of the resource. Required. - :paramtype location: str - :keyword auto_delete_on_idle: TimeSpan idle interval after which the topic is automatically - deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: str - :keyword entity_availability_status: Entity availability status for the topic. Known values - are: "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :paramtype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :keyword default_message_time_to_live: Default message time to live value. This is the duration - after which the message expires, starting from when the message is sent to Service Bus. This is - the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: str - :keyword duplicate_detection_history_time_window: TimeSpan structure that defines the duration - of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: str - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - :keyword enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :paramtype enable_partitioning: bool - :keyword filtering_messages_before_publishing: Whether messages should be filtered before - publishing. - :paramtype filtering_messages_before_publishing: bool - :keyword is_anonymous_accessible: Value that indicates whether the message is accessible - anonymously. - :paramtype is_anonymous_accessible: bool - :keyword is_express: - :paramtype is_express: bool - :keyword max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of - the memory allocated for the topic. - :paramtype max_size_in_megabytes: int - :keyword requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", - "Restoring", "SendDisabled", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - :keyword support_ordering: Value that indicates whether the topic supports ordering. - :paramtype support_ordering: bool - """ - super().__init__(**kwargs) - self.name = name - self.location = location - self.accessed_at = None - self.auto_delete_on_idle = auto_delete_on_idle - self.entity_availability_status = entity_availability_status - self.created_at = None - self.count_details = None - self.default_message_time_to_live = default_message_time_to_live - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.enable_batched_operations = enable_batched_operations - self.enable_express = enable_express - self.enable_partitioning = enable_partitioning - self.filtering_messages_before_publishing = filtering_messages_before_publishing - self.is_anonymous_accessible = is_anonymous_accessible - self.is_express = is_express - self.max_size_in_megabytes = max_size_in_megabytes - self.requires_duplicate_detection = requires_duplicate_detection - self.size_in_bytes = None - self.status = status - self.subscription_count = None - self.support_ordering = support_ordering - self.updated_at = None - - -class TopicListResult(_serialization.Model): - """The response to the List Topics operation. - - :ivar value: Result of the List Topics operation. - :vartype value: list[~azure.mgmt.servicebus.v2015_08_01.models.TopicResource] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of topics. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[TopicResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.TopicResource"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Topics operation. - :paramtype value: list[~azure.mgmt.servicebus.v2015_08_01.models.TopicResource] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of topics. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class TopicResource(Resource): # pylint: disable=too-many-instance-attributes - """Description of topic resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar location: Resource location. - :vartype location: str - :ivar type: Resource type. - :vartype type: str - :ivar accessed_at: Last time the message was sent, or a request was received, for this topic. - :vartype accessed_at: ~datetime.datetime - :ivar auto_delete_on_idle: TimeSpan idle interval after which the topic is automatically - deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: str - :ivar entity_availability_status: Entity availability status for the topic. Known values are: - "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :vartype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2015_08_01.models.MessageCountDetails - :ivar default_message_time_to_live: Default message time to live value. This is the duration - after which the message expires, starting from when the message is sent to Service Bus. This is - the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: str - :ivar duplicate_detection_history_time_window: TimeSpan structure that defines the duration of - the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: str - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - :ivar enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :vartype enable_partitioning: bool - :ivar filtering_messages_before_publishing: Whether messages should be filtered before - publishing. - :vartype filtering_messages_before_publishing: bool - :ivar is_anonymous_accessible: Value that indicates whether the message is accessible - anonymously. - :vartype is_anonymous_accessible: bool - :ivar is_express: - :vartype is_express: bool - :ivar max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of the - memory allocated for the topic. - :vartype max_size_in_megabytes: int - :ivar requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar size_in_bytes: Size of the topic, in bytes. - :vartype size_in_bytes: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", "Restoring", - "SendDisabled", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - :ivar subscription_count: Number of subscriptions. - :vartype subscription_count: int - :ivar support_ordering: Value that indicates whether the topic supports ordering. - :vartype support_ordering: bool - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "accessed_at": {"readonly": True}, - "created_at": {"readonly": True}, - "count_details": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "subscription_count": {"readonly": True}, - "updated_at": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "str"}, - "entity_availability_status": {"key": "properties.entityAvailabilityStatus", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "str"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "str", - }, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "filtering_messages_before_publishing": {"key": "properties.filteringMessagesBeforePublishing", "type": "bool"}, - "is_anonymous_accessible": {"key": "properties.isAnonymousAccessible", "type": "bool"}, - "is_express": {"key": "properties.isExpress", "type": "bool"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "subscription_count": {"key": "properties.subscriptionCount", "type": "int"}, - "support_ordering": {"key": "properties.supportOrdering", "type": "bool"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - location: Optional[str] = None, - auto_delete_on_idle: Optional[str] = None, - entity_availability_status: Optional[Union[str, "_models.EntityAvailabilityStatus"]] = None, - default_message_time_to_live: Optional[str] = None, - duplicate_detection_history_time_window: Optional[str] = None, - enable_batched_operations: Optional[bool] = None, - enable_express: Optional[bool] = None, - enable_partitioning: Optional[bool] = None, - filtering_messages_before_publishing: Optional[bool] = None, - is_anonymous_accessible: Optional[bool] = None, - is_express: Optional[bool] = None, - max_size_in_megabytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - support_ordering: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword auto_delete_on_idle: TimeSpan idle interval after which the topic is automatically - deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: str - :keyword entity_availability_status: Entity availability status for the topic. Known values - are: "Available", "Limited", "Renaming", "Restoring", and "Unknown". - :paramtype entity_availability_status: str or - ~azure.mgmt.servicebus.v2015_08_01.models.EntityAvailabilityStatus - :keyword default_message_time_to_live: Default message time to live value. This is the duration - after which the message expires, starting from when the message is sent to Service Bus. This is - the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: str - :keyword duplicate_detection_history_time_window: TimeSpan structure that defines the duration - of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: str - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - :keyword enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :paramtype enable_partitioning: bool - :keyword filtering_messages_before_publishing: Whether messages should be filtered before - publishing. - :paramtype filtering_messages_before_publishing: bool - :keyword is_anonymous_accessible: Value that indicates whether the message is accessible - anonymously. - :paramtype is_anonymous_accessible: bool - :keyword is_express: - :paramtype is_express: bool - :keyword max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of - the memory allocated for the topic. - :paramtype max_size_in_megabytes: int - :keyword requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Creating", "Deleting", "Disabled", "ReceiveDisabled", "Renaming", - "Restoring", "SendDisabled", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2015_08_01.models.EntityStatus - :keyword support_ordering: Value that indicates whether the topic supports ordering. - :paramtype support_ordering: bool - """ - super().__init__(location=location, **kwargs) - self.accessed_at = None - self.auto_delete_on_idle = auto_delete_on_idle - self.entity_availability_status = entity_availability_status - self.created_at = None - self.count_details = None - self.default_message_time_to_live = default_message_time_to_live - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.enable_batched_operations = enable_batched_operations - self.enable_express = enable_express - self.enable_partitioning = enable_partitioning - self.filtering_messages_before_publishing = filtering_messages_before_publishing - self.is_anonymous_accessible = is_anonymous_accessible - self.is_express = is_express - self.max_size_in_megabytes = max_size_in_megabytes - self.requires_duplicate_detection = requires_duplicate_detection - self.size_in_bytes = None - self.status = status - self.subscription_count = None - self.support_ordering = support_ordering - self.updated_at = None diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_service_bus_management_client_enums.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_service_bus_management_client_enums.py deleted file mode 100644 index cbd05dcaf049..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/models/_service_bus_management_client_enums.py +++ /dev/null @@ -1,94 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from enum import Enum -from azure.core import CaseInsensitiveEnumMeta - - -class AccessRights(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """AccessRights.""" - - MANAGE = "Manage" - SEND = "Send" - LISTEN = "Listen" - - -class EntityAvailabilityStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Entity availability status.""" - - AVAILABLE = "Available" - LIMITED = "Limited" - RENAMING = "Renaming" - RESTORING = "Restoring" - UNKNOWN = "Unknown" - - -class EntityStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Entity status.""" - - ACTIVE = "Active" - CREATING = "Creating" - DELETING = "Deleting" - DISABLED = "Disabled" - RECEIVE_DISABLED = "ReceiveDisabled" - RENAMING = "Renaming" - RESTORING = "Restoring" - SEND_DISABLED = "SendDisabled" - UNKNOWN = "Unknown" - - -class NamespaceState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """State of the namespace.""" - - UNKNOWN = "Unknown" - CREATING = "Creating" - CREATED = "Created" - ACTIVATING = "Activating" - ENABLING = "Enabling" - ACTIVE = "Active" - DISABLING = "Disabling" - DISABLED = "Disabled" - SOFT_DELETING = "SoftDeleting" - SOFT_DELETED = "SoftDeleted" - REMOVING = "Removing" - REMOVED = "Removed" - FAILED = "Failed" - - -class Policykey(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Key that needs to be regenerated.""" - - PRIMARY_KEY = "PrimaryKey" - SECONDARY_KEY = "SecondaryKey" - - -class SkuName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Name of this SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class SkuTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The billing tier of this particular SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class UnavailableReason(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Specifies the reason for the unavailability of the service.""" - - NONE = "None" - INVALID_NAME = "InvalidName" - SUBSCRIPTION_IS_DISABLED = "SubscriptionIsDisabled" - NAME_IN_USE = "NameInUse" - NAME_IN_LOCKDOWN = "NameInLockdown" - TOO_MANY_NAMESPACE_IN_CURRENT_SUBSCRIPTION = "TooManyNamespaceInCurrentSubscription" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/__init__.py deleted file mode 100644 index 2051d27d13ae..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/__init__.py +++ /dev/null @@ -1,27 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._operations import Operations -from ._namespaces_operations import NamespacesOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "Operations", - "NamespacesOperations", - "QueuesOperations", - "TopicsOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_namespaces_operations.py deleted file mode 100644 index 5f9924668b85..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_namespaces_operations.py +++ /dev/null @@ -1,1812 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_check_name_availability_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/CheckNameAvailability" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_subscription_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/namespaces") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2015_08_01.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @overload - def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.CheckNameAvailability or IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_subscription(self, **kwargs: Any) -> Iterable["_models.NamespaceResource"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either NamespaceResource or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.NamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscription_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("NamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Iterable["_models.NamespaceResource"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either NamespaceResource or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.NamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("NamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NamespaceCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NamespaceCreateOrUpdateParameters") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NamespaceCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.NamespaceResource]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either NamespaceResource or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.NamespaceResource]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either NamespaceResource or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NamespaceCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.NamespaceResource]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a - NamespaceCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceCreateOrUpdateParameters - or IO[bytes] - :return: An instance of LROPoller that returns either NamespaceResource or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NamespaceResource] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("NamespaceResource", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.NamespaceResource].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.NamespaceResource]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _delete_initial(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> LROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.NamespaceResource: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NamespaceResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.NamespaceResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NamespaceResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.NamespaceResource]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NamespaceResource or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.NamespaceResource]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NamespaceResource or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.NamespaceResource]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - NamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceUpdateParameters or - IO[bytes] - :return: NamespaceResource or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.NamespaceResource or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.NamespaceResource]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("NamespaceResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.SharedAccessAuthorizationRuleResource"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SharedAccessAuthorizationRuleResource or the - result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SharedAccessAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a - SharedAccessAuthorizationRuleCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - or IO[bytes] - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SharedAccessAuthorizationRuleCreateOrUpdateParameters") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.ResourceListKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateKeysParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateKeysParameters, IO[bytes]], - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateKeysParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters or - IO[bytes] - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateKeysParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_operations.py deleted file mode 100644 index 30e40e3521ff..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_operations.py +++ /dev/null @@ -1,152 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.ServiceBus/operations") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2015_08_01.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_queues_operations.py deleted file mode 100644 index 8db693f758fe..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_queues_operations.py +++ /dev/null @@ -1,1504 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_all_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_post_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2015_08_01.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_all( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.QueueResource"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either QueueResource or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.QueueResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.QueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_all_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("QueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.QueueCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.QueueResource: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.QueueCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: QueueResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.QueueResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.QueueResource: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: QueueResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.QueueResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.QueueCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.QueueResource: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - QueueCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.QueueCreateOrUpdateParameters or - IO[bytes] - :return: QueueResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.QueueResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.QueueResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "QueueCreateOrUpdateParameters") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("QueueResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> _models.QueueResource: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: QueueResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.QueueResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.QueueResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("QueueResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> Iterable["_models.SharedAccessAuthorizationRuleResource"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SharedAccessAuthorizationRuleResource or the - result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SharedAccessAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a - SharedAccessAuthorizationRuleCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - or IO[bytes] - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SharedAccessAuthorizationRuleCreateOrUpdateParameters") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def post_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - _request = build_post_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.ResourceListKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateKeysParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateKeysParameters, IO[bytes]], - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateKeysParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters or - IO[bytes] - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateKeysParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_subscriptions_operations.py deleted file mode 100644 index 9edf13b6568f..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_subscriptions_operations.py +++ /dev/null @@ -1,586 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_all_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2015_08_01.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_all( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> Iterable["_models.SubscriptionResource"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SubscriptionResource or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_all_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SubscriptionCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SubscriptionResource: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SubscriptionResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SubscriptionResource: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SubscriptionResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SubscriptionCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.SubscriptionResource: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SubscriptionCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionCreateOrUpdateParameters or IO[bytes] - :return: SubscriptionResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SubscriptionResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SubscriptionCreateOrUpdateParameters") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SubscriptionResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SubscriptionResource: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SubscriptionResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SubscriptionResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SubscriptionResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SubscriptionResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_topics_operations.py deleted file mode 100644 index 911ab1d2772c..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/operations/_topics_operations.py +++ /dev/null @@ -1,1513 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_all_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_post_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2015_08_01.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_all( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.TopicResource"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either TopicResource or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.TopicResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.TopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_all_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("TopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.TopicCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.TopicResource: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.TopicCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: TopicResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.TopicResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.TopicResource: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: TopicResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.TopicResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.TopicCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.TopicResource: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a - TopicCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.TopicCreateOrUpdateParameters or - IO[bytes] - :return: TopicResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.TopicResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.TopicResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "TopicCreateOrUpdateParameters") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("TopicResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> _models.TopicResource: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: TopicResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.TopicResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.TopicResource] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("TopicResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> Iterable["_models.SharedAccessAuthorizationRuleResource"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SharedAccessAuthorizationRuleResource or the - result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SharedAccessAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SharedAccessAuthorizationRuleCreateOrUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a - SharedAccessAuthorizationRuleCreateOrUpdateParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleCreateOrUpdateParameters - or IO[bytes] - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SharedAccessAuthorizationRuleCreateOrUpdateParameters") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def post_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - _request = build_post_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SharedAccessAuthorizationRuleResource: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SharedAccessAuthorizationRuleResource or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.SharedAccessAuthorizationRuleResource - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.SharedAccessAuthorizationRuleResource] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SharedAccessAuthorizationRuleResource", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.ResourceListKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateKeysParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateKeysParameters, IO[bytes]], - **kwargs: Any - ) -> _models.ResourceListKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateKeysParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2015_08_01.models.RegenerateKeysParameters or - IO[bytes] - :return: ResourceListKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2015_08_01.models.ResourceListKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2015-08-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ResourceListKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateKeysParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - raise HttpResponseError(response=response, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ResourceListKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/py.typed b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/py.typed deleted file mode 100644 index e5aff4f83af8..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2015_08_01/py.typed +++ /dev/null @@ -1 +0,0 @@ -# Marker file for PEP 561. \ No newline at end of file diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/__init__.py deleted file mode 100644 index 2e171d69863b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/__init__.py +++ /dev/null @@ -1,26 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient -from ._version import VERSION - -__version__ = VERSION - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_configuration.py deleted file mode 100644 index 1f44eaf6be54..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy - -from ._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2017-04-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2017-04-01") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = ARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_metadata.json b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_metadata.json deleted file mode 100644 index 607d6e6bd467..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_metadata.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "chosen_version": "2017-04-01", - "total_api_version_list": ["2017-04-01"], - "client": { - "name": "ServiceBusManagementClient", - "filename": "_service_bus_management_client", - "description": "Azure Service Bus client.", - "host_value": "\"https://management.azure.com\"", - "parameterized_host_template": null, - "azure_arm": true, - "has_public_lro_operations": true, - "client_side_validation": false, - "sync_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"ARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \".._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"AsyncARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"AsyncARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \"..._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "global_parameters": { - "sync": { - "credential": { - "signature": "credential: \"TokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials.TokenCredential", - "required": true, - "method_location": "positional" - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true, - "method_location": "positional" - } - }, - "async": { - "credential": { - "signature": "credential: \"AsyncTokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials_async.AsyncTokenCredential", - "required": true - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true - } - }, - "constant": { - }, - "call": "credential, subscription_id", - "service_client_specific": { - "sync": { - "api_version": { - "signature": "api_version: Optional[str]=None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles=KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - }, - "async": { - "api_version": { - "signature": "api_version: Optional[str] = None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles = KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - } - } - }, - "config": { - "credential": true, - "credential_scopes": ["https://management.azure.com/.default"], - "credential_call_sync": "ARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "credential_call_async": "AsyncARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "sync_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMChallengeAuthenticationPolicy\", \"ARMHttpLoggingPolicy\"]}, \"local\": {\"._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMHttpLoggingPolicy\", \"AsyncARMChallengeAuthenticationPolicy\"]}, \"local\": {\".._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "operation_groups": { - "namespaces": "NamespacesOperations", - "queues": "QueuesOperations", - "topics": "TopicsOperations", - "disaster_recovery_configs": "DisasterRecoveryConfigsOperations", - "event_hubs": "EventHubsOperations", - "migration_configs": "MigrationConfigsOperations", - "operations": "Operations", - "premium_messaging_regions": "PremiumMessagingRegionsOperations", - "rules": "RulesOperations", - "regions": "RegionsOperations", - "subscriptions": "SubscriptionsOperations" - } -} diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_service_bus_management_client.py deleted file mode 100644 index 6f33be111531..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_service_bus_management_client.py +++ /dev/null @@ -1,170 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import HttpRequest, HttpResponse -from azure.mgmt.core import ARMPipelineClient -from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy - -from . import models as _models -from .._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - EventHubsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PremiumMessagingRegionsOperations, - QueuesOperations, - RegionsOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: azure.mgmt.servicebus.v2017_04_01.operations.NamespacesOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2017_04_01.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2017_04_01.operations.TopicsOperations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2017_04_01.operations.DisasterRecoveryConfigsOperations - :ivar event_hubs: EventHubsOperations operations - :vartype event_hubs: azure.mgmt.servicebus.v2017_04_01.operations.EventHubsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2017_04_01.operations.MigrationConfigsOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2017_04_01.operations.Operations - :ivar premium_messaging_regions: PremiumMessagingRegionsOperations operations - :vartype premium_messaging_regions: - azure.mgmt.servicebus.v2017_04_01.operations.PremiumMessagingRegionsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2017_04_01.operations.RulesOperations - :ivar regions: RegionsOperations operations - :vartype regions: azure.mgmt.servicebus.v2017_04_01.operations.RegionsOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: azure.mgmt.servicebus.v2017_04_01.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2017-04-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "TokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - ARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - self.queues = QueuesOperations(self._client, self._config, self._serialize, self._deserialize, "2017-04-01") - self.topics = TopicsOperations(self._client, self._config, self._serialize, self._deserialize, "2017-04-01") - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - self.event_hubs = EventHubsOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - self.operations = Operations(self._client, self._config, self._serialize, self._deserialize, "2017-04-01") - self.premium_messaging_regions = PremiumMessagingRegionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - self.rules = RulesOperations(self._client, self._config, self._serialize, self._deserialize, "2017-04-01") - self.regions = RegionsOperations(self._client, self._config, self._serialize, self._deserialize, "2017-04-01") - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - - def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.HttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - def close(self) -> None: - self._client.close() - - def __enter__(self) -> Self: - self._client.__enter__() - return self - - def __exit__(self, *exc_details: Any) -> None: - self._client.__exit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_version.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_version.py deleted file mode 100644 index 22d4eb39aa93..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/_version.py +++ /dev/null @@ -1,9 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -VERSION = "8.2.1" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/__init__.py deleted file mode 100644 index 530b8638dfd3..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_configuration.py deleted file mode 100644 index 06033b02ce72..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMHttpLoggingPolicy, AsyncARMChallengeAuthenticationPolicy - -from .._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2017-04-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2017-04-01") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.AsyncRedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.AsyncRetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = AsyncARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_service_bus_management_client.py deleted file mode 100644 index fd37b436e1d5..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/_service_bus_management_client.py +++ /dev/null @@ -1,173 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, Awaitable, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.mgmt.core import AsyncARMPipelineClient -from azure.mgmt.core.policies import AsyncARMAutoResourceProviderRegistrationPolicy - -from .. import models as _models -from ..._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - EventHubsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PremiumMessagingRegionsOperations, - QueuesOperations, - RegionsOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: azure.mgmt.servicebus.v2017_04_01.aio.operations.NamespacesOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2017_04_01.aio.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2017_04_01.aio.operations.TopicsOperations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2017_04_01.aio.operations.DisasterRecoveryConfigsOperations - :ivar event_hubs: EventHubsOperations operations - :vartype event_hubs: azure.mgmt.servicebus.v2017_04_01.aio.operations.EventHubsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2017_04_01.aio.operations.MigrationConfigsOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2017_04_01.aio.operations.Operations - :ivar premium_messaging_regions: PremiumMessagingRegionsOperations operations - :vartype premium_messaging_regions: - azure.mgmt.servicebus.v2017_04_01.aio.operations.PremiumMessagingRegionsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2017_04_01.aio.operations.RulesOperations - :ivar regions: RegionsOperations operations - :vartype regions: azure.mgmt.servicebus.v2017_04_01.aio.operations.RegionsOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2017_04_01.aio.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2017-04-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "AsyncTokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - AsyncARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - self.queues = QueuesOperations(self._client, self._config, self._serialize, self._deserialize, "2017-04-01") - self.topics = TopicsOperations(self._client, self._config, self._serialize, self._deserialize, "2017-04-01") - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - self.event_hubs = EventHubsOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - self.operations = Operations(self._client, self._config, self._serialize, self._deserialize, "2017-04-01") - self.premium_messaging_regions = PremiumMessagingRegionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - self.rules = RulesOperations(self._client, self._config, self._serialize, self._deserialize, "2017-04-01") - self.regions = RegionsOperations(self._client, self._config, self._serialize, self._deserialize, "2017-04-01") - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2017-04-01" - ) - - def _send_request( - self, request: HttpRequest, *, stream: bool = False, **kwargs: Any - ) -> Awaitable[AsyncHttpResponse]: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = await client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.AsyncHttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - async def close(self) -> None: - await self._client.close() - - async def __aenter__(self) -> Self: - await self._client.__aenter__() - return self - - async def __aexit__(self, *exc_details: Any) -> None: - await self._client.__aexit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/__init__.py deleted file mode 100644 index dbb5c8284b01..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/__init__.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._event_hubs_operations import EventHubsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._operations import Operations -from ._premium_messaging_regions_operations import PremiumMessagingRegionsOperations -from ._rules_operations import RulesOperations -from ._regions_operations import RegionsOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "QueuesOperations", - "TopicsOperations", - "DisasterRecoveryConfigsOperations", - "EventHubsOperations", - "MigrationConfigsOperations", - "Operations", - "PremiumMessagingRegionsOperations", - "RulesOperations", - "RegionsOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index d0f3452ca1e3..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,875 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._disaster_recovery_configs_operations import ( - build_break_pairing_request, - build_check_name_availability_request, - build_create_or_update_request, - build_delete_request, - build_fail_over_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_keys_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.aio.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailability or IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery or IO[bytes] - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.ArmDisasterRecovery]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - if response.status_code == 200: - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def fail_over( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_event_hubs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_event_hubs_operations.py deleted file mode 100644 index 667aa528073d..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_event_hubs_operations.py +++ /dev/null @@ -1,141 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._event_hubs_operations import build_list_by_namespace_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class EventHubsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.aio.ServiceBusManagementClient`'s - :attr:`event_hubs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_namespace( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.Eventhub"]: - """Gets all the Event Hubs in a service bus Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either Eventhub or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.Eventhub] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.EventHubListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("EventHubListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_migration_configs_operations.py deleted file mode 100644 index 77e71d2ac5a4..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_migration_configs_operations.py +++ /dev/null @@ -1,610 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._migration_configs_operations import ( - build_complete_migration_request, - build_create_and_start_migration_request, - build_delete_request, - build_get_request, - build_list_request, - build_revert_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.aio.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties or - IO[bytes] - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_namespaces_operations.py deleted file mode 100644 index 22bd6763fb67..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_namespaces_operations.py +++ /dev/null @@ -1,1803 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._namespaces_operations import ( - build_check_name_availability_request, - build_create_or_update_authorization_rule_request, - build_create_or_update_network_rule_set_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_network_rule_set_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_resource_group_request, - build_list_keys_request, - build_list_network_rule_sets_request, - build_list_request, - build_migrate_request, - build_regenerate_keys_request, - build_update_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.aio.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailability or IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceMigrate, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespaceMigrate - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceMigrate, IO[bytes]], - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Is either a - SBNamespaceMigrate type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespaceMigrate or IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceMigrate") - - _request = build_migrate_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace or IO[bytes] - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> AsyncLROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespaceUpdateParameters or - IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_operations.py deleted file mode 100644 index 8917db7ceadf..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_operations.py +++ /dev/null @@ -1,132 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._operations import build_list_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.aio.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_premium_messaging_regions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_premium_messaging_regions_operations.py deleted file mode 100644 index 97c644ad3a46..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_premium_messaging_regions_operations.py +++ /dev/null @@ -1,134 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._premium_messaging_regions_operations import build_list_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PremiumMessagingRegionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.aio.ServiceBusManagementClient`'s - :attr:`premium_messaging_regions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.PremiumMessagingRegions"]: - """Gets the available premium messaging regions for servicebus. - - :return: An iterator like instance of either PremiumMessagingRegions or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.PremiumMessagingRegions] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.PremiumMessagingRegionsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PremiumMessagingRegionsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_queues_operations.py deleted file mode 100644 index c100e32d667a..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_queues_operations.py +++ /dev/null @@ -1,1045 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._queues_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.aio.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_regions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_regions_operations.py deleted file mode 100644 index 5c1105247594..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_regions_operations.py +++ /dev/null @@ -1,137 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._regions_operations import build_list_by_sku_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class RegionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.aio.ServiceBusManagementClient`'s - :attr:`regions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_sku(self, sku: str, **kwargs: Any) -> AsyncIterable["_models.PremiumMessagingRegions"]: - """Gets the available Regions for a given sku. - - :param sku: The sku type. Required. - :type sku: str - :return: An iterator like instance of either PremiumMessagingRegions or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.PremiumMessagingRegions] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.PremiumMessagingRegionsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_sku_request( - sku=sku, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PremiumMessagingRegionsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_rules_operations.py deleted file mode 100644 index e0526c00e566..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_rules_operations.py +++ /dev/null @@ -1,467 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._rules_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_subscriptions_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.aio.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_subscriptions_operations.py deleted file mode 100644 index a12235b3e8c1..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_subscriptions_operations.py +++ /dev/null @@ -1,454 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._subscriptions_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_topic_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.aio.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_topics_operations.py deleted file mode 100644 index 16a2eac161d9..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/aio/operations/_topics_operations.py +++ /dev/null @@ -1,1054 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._topics_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.aio.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/__init__.py deleted file mode 100644 index b4d14fae1e81..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/__init__.py +++ /dev/null @@ -1,143 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._models_py3 import AccessKeys -from ._models_py3 import Action -from ._models_py3 import ArmDisasterRecovery -from ._models_py3 import ArmDisasterRecoveryListResult -from ._models_py3 import CaptureDescription -from ._models_py3 import CheckNameAvailability -from ._models_py3 import CheckNameAvailabilityResult -from ._models_py3 import CorrelationFilter -from ._models_py3 import Destination -from ._models_py3 import ErrorAdditionalInfo -from ._models_py3 import ErrorResponse -from ._models_py3 import ErrorResponseError -from ._models_py3 import EventHubListResult -from ._models_py3 import Eventhub -from ._models_py3 import MessageCountDetails -from ._models_py3 import MigrationConfigListResult -from ._models_py3 import MigrationConfigProperties -from ._models_py3 import NWRuleSetIpRules -from ._models_py3 import NWRuleSetVirtualNetworkRules -from ._models_py3 import NetworkRuleSet -from ._models_py3 import NetworkRuleSetListResult -from ._models_py3 import Operation -from ._models_py3 import OperationDisplay -from ._models_py3 import OperationListResult -from ._models_py3 import PremiumMessagingRegions -from ._models_py3 import PremiumMessagingRegionsListResult -from ._models_py3 import PremiumMessagingRegionsProperties -from ._models_py3 import RegenerateAccessKeyParameters -from ._models_py3 import Resource -from ._models_py3 import ResourceNamespacePatch -from ._models_py3 import Rule -from ._models_py3 import RuleListResult -from ._models_py3 import SBAuthorizationRule -from ._models_py3 import SBAuthorizationRuleListResult -from ._models_py3 import SBNamespace -from ._models_py3 import SBNamespaceListResult -from ._models_py3 import SBNamespaceMigrate -from ._models_py3 import SBNamespaceUpdateParameters -from ._models_py3 import SBQueue -from ._models_py3 import SBQueueListResult -from ._models_py3 import SBSku -from ._models_py3 import SBSubscription -from ._models_py3 import SBSubscriptionListResult -from ._models_py3 import SBTopic -from ._models_py3 import SBTopicListResult -from ._models_py3 import SqlFilter -from ._models_py3 import SqlRuleAction -from ._models_py3 import Subnet -from ._models_py3 import TrackedResource - -from ._service_bus_management_client_enums import AccessRights -from ._service_bus_management_client_enums import DefaultAction -from ._service_bus_management_client_enums import EncodingCaptureDescription -from ._service_bus_management_client_enums import EntityStatus -from ._service_bus_management_client_enums import FilterType -from ._service_bus_management_client_enums import KeyType -from ._service_bus_management_client_enums import MigrationConfigurationName -from ._service_bus_management_client_enums import NameSpaceType -from ._service_bus_management_client_enums import NetworkRuleIPAction -from ._service_bus_management_client_enums import ProvisioningStateDR -from ._service_bus_management_client_enums import RoleDisasterRecovery -from ._service_bus_management_client_enums import SkuName -from ._service_bus_management_client_enums import SkuTier -from ._service_bus_management_client_enums import UnavailableReason -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "AccessKeys", - "Action", - "ArmDisasterRecovery", - "ArmDisasterRecoveryListResult", - "CaptureDescription", - "CheckNameAvailability", - "CheckNameAvailabilityResult", - "CorrelationFilter", - "Destination", - "ErrorAdditionalInfo", - "ErrorResponse", - "ErrorResponseError", - "EventHubListResult", - "Eventhub", - "MessageCountDetails", - "MigrationConfigListResult", - "MigrationConfigProperties", - "NWRuleSetIpRules", - "NWRuleSetVirtualNetworkRules", - "NetworkRuleSet", - "NetworkRuleSetListResult", - "Operation", - "OperationDisplay", - "OperationListResult", - "PremiumMessagingRegions", - "PremiumMessagingRegionsListResult", - "PremiumMessagingRegionsProperties", - "RegenerateAccessKeyParameters", - "Resource", - "ResourceNamespacePatch", - "Rule", - "RuleListResult", - "SBAuthorizationRule", - "SBAuthorizationRuleListResult", - "SBNamespace", - "SBNamespaceListResult", - "SBNamespaceMigrate", - "SBNamespaceUpdateParameters", - "SBQueue", - "SBQueueListResult", - "SBSku", - "SBSubscription", - "SBSubscriptionListResult", - "SBTopic", - "SBTopicListResult", - "SqlFilter", - "SqlRuleAction", - "Subnet", - "TrackedResource", - "AccessRights", - "DefaultAction", - "EncodingCaptureDescription", - "EntityStatus", - "FilterType", - "KeyType", - "MigrationConfigurationName", - "NameSpaceType", - "NetworkRuleIPAction", - "ProvisioningStateDR", - "RoleDisasterRecovery", - "SkuName", - "SkuTier", - "UnavailableReason", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_models_py3.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_models_py3.py deleted file mode 100644 index 78572731dc4b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_models_py3.py +++ /dev/null @@ -1,2532 +0,0 @@ -# coding=utf-8 -# pylint: disable=too-many-lines -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -import datetime -from typing import Any, Dict, List, Optional, TYPE_CHECKING, Union - -from ... import _serialization - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from .. import models as _models - - -class AccessKeys(_serialization.Model): - """Namespace/ServiceBus Connection String. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar primary_connection_string: Primary connection string of the created namespace - authorization rule. - :vartype primary_connection_string: str - :ivar secondary_connection_string: Secondary connection string of the created namespace - authorization rule. - :vartype secondary_connection_string: str - :ivar alias_primary_connection_string: Primary connection string of the alias if GEO DR is - enabled. - :vartype alias_primary_connection_string: str - :ivar alias_secondary_connection_string: Secondary connection string of the alias if GEO DR is - enabled. - :vartype alias_secondary_connection_string: str - :ivar primary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype primary_key: str - :ivar secondary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype secondary_key: str - :ivar key_name: A string that describes the authorization rule. - :vartype key_name: str - """ - - _validation = { - "primary_connection_string": {"readonly": True}, - "secondary_connection_string": {"readonly": True}, - "alias_primary_connection_string": {"readonly": True}, - "alias_secondary_connection_string": {"readonly": True}, - "primary_key": {"readonly": True}, - "secondary_key": {"readonly": True}, - "key_name": {"readonly": True}, - } - - _attribute_map = { - "primary_connection_string": {"key": "primaryConnectionString", "type": "str"}, - "secondary_connection_string": {"key": "secondaryConnectionString", "type": "str"}, - "alias_primary_connection_string": {"key": "aliasPrimaryConnectionString", "type": "str"}, - "alias_secondary_connection_string": {"key": "aliasSecondaryConnectionString", "type": "str"}, - "primary_key": {"key": "primaryKey", "type": "str"}, - "secondary_key": {"key": "secondaryKey", "type": "str"}, - "key_name": {"key": "keyName", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.primary_connection_string = None - self.secondary_connection_string = None - self.alias_primary_connection_string = None - self.alias_secondary_connection_string = None - self.primary_key = None - self.secondary_key = None - self.key_name = None - - -class Action(_serialization.Model): - """Represents the filter actions which are allowed for the transformation of a message that have - been matched by a filter expression. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: Optional[int] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class Resource(_serialization.Model): - """The Resource definition for other than namespace. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id = None - self.name = None - self.type = None - - -class ArmDisasterRecovery(Resource): - """Single item in List or Get Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar provisioning_state: Provisioning state of the Alias(Disaster Recovery configuration) - - possible values 'Accepted' or 'Succeeded' or 'Failed'. Known values are: "Accepted", - "Succeeded", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2017_04_01.models.ProvisioningStateDR - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is part - of GEO DR pairing. - :vartype partner_namespace: str - :ivar alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :vartype alternate_name: str - :ivar role: role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' - or 'Secondary'. Known values are: "Primary", "PrimaryNotReplicating", and "Secondary". - :vartype role: str or ~azure.mgmt.servicebus.v2017_04_01.models.RoleDisasterRecovery - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "role": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "partner_namespace": {"key": "properties.partnerNamespace", "type": "str"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - "role": {"key": "properties.role", "type": "str"}, - } - - def __init__( - self, *, partner_namespace: Optional[str] = None, alternate_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is - part of GEO DR pairing. - :paramtype partner_namespace: str - :keyword alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :paramtype alternate_name: str - """ - super().__init__(**kwargs) - self.provisioning_state = None - self.pending_replication_operations_count = None - self.partner_namespace = partner_namespace - self.alternate_name = alternate_name - self.role = None - - -class ArmDisasterRecoveryListResult(_serialization.Model): - """The result of the List Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Alias(Disaster Recovery configurations). - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Alias(Disaster Recovery configuration). - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[ArmDisasterRecovery]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.ArmDisasterRecovery"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Alias(Disaster Recovery configurations). - :paramtype value: list[~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class CaptureDescription(_serialization.Model): - """Properties to configure capture description for eventhub. - - :ivar enabled: A value that indicates whether capture description is enabled. - :vartype enabled: bool - :ivar encoding: Enumerates the possible values for the encoding format of capture description. - Known values are: "Avro" and "AvroDeflate". - :vartype encoding: str or ~azure.mgmt.servicebus.v2017_04_01.models.EncodingCaptureDescription - :ivar interval_in_seconds: The time window allows you to set the frequency with which the - capture to Azure Blobs will happen, value should between 60 to 900 seconds. - :vartype interval_in_seconds: int - :ivar size_limit_in_bytes: The size window defines the amount of data built up in your Event - Hub before an capture operation, value should be between 10485760 and 524288000 bytes. - :vartype size_limit_in_bytes: int - :ivar destination: Properties of Destination where capture will be stored. (Storage Account, - Blob Names). - :vartype destination: ~azure.mgmt.servicebus.v2017_04_01.models.Destination - """ - - _validation = { - "interval_in_seconds": {"maximum": 900, "minimum": 60}, - "size_limit_in_bytes": {"maximum": 524288000, "minimum": 10485760}, - } - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "encoding": {"key": "encoding", "type": "str"}, - "interval_in_seconds": {"key": "intervalInSeconds", "type": "int"}, - "size_limit_in_bytes": {"key": "sizeLimitInBytes", "type": "int"}, - "destination": {"key": "destination", "type": "Destination"}, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - encoding: Optional[Union[str, "_models.EncodingCaptureDescription"]] = None, - interval_in_seconds: Optional[int] = None, - size_limit_in_bytes: Optional[int] = None, - destination: Optional["_models.Destination"] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: A value that indicates whether capture description is enabled. - :paramtype enabled: bool - :keyword encoding: Enumerates the possible values for the encoding format of capture - description. Known values are: "Avro" and "AvroDeflate". - :paramtype encoding: str or - ~azure.mgmt.servicebus.v2017_04_01.models.EncodingCaptureDescription - :keyword interval_in_seconds: The time window allows you to set the frequency with which the - capture to Azure Blobs will happen, value should between 60 to 900 seconds. - :paramtype interval_in_seconds: int - :keyword size_limit_in_bytes: The size window defines the amount of data built up in your Event - Hub before an capture operation, value should be between 10485760 and 524288000 bytes. - :paramtype size_limit_in_bytes: int - :keyword destination: Properties of Destination where capture will be stored. (Storage Account, - Blob Names). - :paramtype destination: ~azure.mgmt.servicebus.v2017_04_01.models.Destination - """ - super().__init__(**kwargs) - self.enabled = enabled - self.encoding = encoding - self.interval_in_seconds = interval_in_seconds - self.size_limit_in_bytes = size_limit_in_bytes - self.destination = destination - - -class CheckNameAvailability(_serialization.Model): - """Description of a Check Name availability request properties. - - All required parameters must be populated in order to send to server. - - :ivar name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :vartype name: str - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - } - - def __init__(self, *, name: str, **kwargs: Any) -> None: - """ - :keyword name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :paramtype name: str - """ - super().__init__(**kwargs) - self.name = name - - -class CheckNameAvailabilityResult(_serialization.Model): - """Description of a Check Name availability request properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar message: The detailed info regarding the reason associated with the namespace. - :vartype message: str - :ivar name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :vartype name_available: bool - :ivar reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :vartype reason: str or ~azure.mgmt.servicebus.v2017_04_01.models.UnavailableReason - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "message": {"key": "message", "type": "str"}, - "name_available": {"key": "nameAvailable", "type": "bool"}, - "reason": {"key": "reason", "type": "str"}, - } - - def __init__( - self, - *, - name_available: Optional[bool] = None, - reason: Optional[Union[str, "_models.UnavailableReason"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :paramtype name_available: bool - :keyword reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :paramtype reason: str or ~azure.mgmt.servicebus.v2017_04_01.models.UnavailableReason - """ - super().__init__(**kwargs) - self.message = None - self.name_available = name_available - self.reason = reason - - -class CorrelationFilter(_serialization.Model): - """Represents the correlation filter expression. - - :ivar properties: dictionary object for custom filters. - :vartype properties: dict[str, str] - :ivar correlation_id: Identifier of the correlation. - :vartype correlation_id: str - :ivar message_id: Identifier of the message. - :vartype message_id: str - :ivar to: Address to send to. - :vartype to: str - :ivar reply_to: Address of the queue to reply to. - :vartype reply_to: str - :ivar label: Application specific label. - :vartype label: str - :ivar session_id: Session identifier. - :vartype session_id: str - :ivar reply_to_session_id: Session identifier to reply to. - :vartype reply_to_session_id: str - :ivar content_type: Content type of the message. - :vartype content_type: str - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "properties": {"key": "properties", "type": "{str}"}, - "correlation_id": {"key": "correlationId", "type": "str"}, - "message_id": {"key": "messageId", "type": "str"}, - "to": {"key": "to", "type": "str"}, - "reply_to": {"key": "replyTo", "type": "str"}, - "label": {"key": "label", "type": "str"}, - "session_id": {"key": "sessionId", "type": "str"}, - "reply_to_session_id": {"key": "replyToSessionId", "type": "str"}, - "content_type": {"key": "contentType", "type": "str"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - properties: Optional[Dict[str, str]] = None, - correlation_id: Optional[str] = None, - message_id: Optional[str] = None, - to: Optional[str] = None, - reply_to: Optional[str] = None, - label: Optional[str] = None, - session_id: Optional[str] = None, - reply_to_session_id: Optional[str] = None, - content_type: Optional[str] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword properties: dictionary object for custom filters. - :paramtype properties: dict[str, str] - :keyword correlation_id: Identifier of the correlation. - :paramtype correlation_id: str - :keyword message_id: Identifier of the message. - :paramtype message_id: str - :keyword to: Address to send to. - :paramtype to: str - :keyword reply_to: Address of the queue to reply to. - :paramtype reply_to: str - :keyword label: Application specific label. - :paramtype label: str - :keyword session_id: Session identifier. - :paramtype session_id: str - :keyword reply_to_session_id: Session identifier to reply to. - :paramtype reply_to_session_id: str - :keyword content_type: Content type of the message. - :paramtype content_type: str - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.properties = properties - self.correlation_id = correlation_id - self.message_id = message_id - self.to = to - self.reply_to = reply_to - self.label = label - self.session_id = session_id - self.reply_to_session_id = reply_to_session_id - self.content_type = content_type - self.requires_preprocessing = requires_preprocessing - - -class Destination(_serialization.Model): - """Capture storage details for capture description. - - :ivar name: Name for capture destination. - :vartype name: str - :ivar storage_account_resource_id: Resource id of the storage account to be used to create the - blobs. - :vartype storage_account_resource_id: str - :ivar blob_container: Blob container Name. - :vartype blob_container: str - :ivar archive_name_format: Blob naming convention for archive, e.g. - {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all - the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order. - :vartype archive_name_format: str - """ - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "storage_account_resource_id": {"key": "properties.storageAccountResourceId", "type": "str"}, - "blob_container": {"key": "properties.blobContainer", "type": "str"}, - "archive_name_format": {"key": "properties.archiveNameFormat", "type": "str"}, - } - - def __init__( - self, - *, - name: Optional[str] = None, - storage_account_resource_id: Optional[str] = None, - blob_container: Optional[str] = None, - archive_name_format: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Name for capture destination. - :paramtype name: str - :keyword storage_account_resource_id: Resource id of the storage account to be used to create - the blobs. - :paramtype storage_account_resource_id: str - :keyword blob_container: Blob container Name. - :paramtype blob_container: str - :keyword archive_name_format: Blob naming convention for archive, e.g. - {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all - the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order. - :paramtype archive_name_format: str - """ - super().__init__(**kwargs) - self.name = name - self.storage_account_resource_id = storage_account_resource_id - self.blob_container = blob_container - self.archive_name_format = archive_name_format - - -class ErrorAdditionalInfo(_serialization.Model): - """The resource management error additional info. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar type: The additional info type. - :vartype type: str - :ivar info: The additional info. - :vartype info: JSON - """ - - _validation = { - "type": {"readonly": True}, - "info": {"readonly": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "info": {"key": "info", "type": "object"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.type = None - self.info = None - - -class ErrorResponse(_serialization.Model): - """The resource management error response. - - :ivar error: The error object. - :vartype error: ~azure.mgmt.servicebus.v2017_04_01.models.ErrorResponseError - """ - - _attribute_map = { - "error": {"key": "error", "type": "ErrorResponseError"}, - } - - def __init__(self, *, error: Optional["_models.ErrorResponseError"] = None, **kwargs: Any) -> None: - """ - :keyword error: The error object. - :paramtype error: ~azure.mgmt.servicebus.v2017_04_01.models.ErrorResponseError - """ - super().__init__(**kwargs) - self.error = error - - -class ErrorResponseError(_serialization.Model): - """The error object. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.servicebus.v2017_04_01.models.ErrorResponse] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.servicebus.v2017_04_01.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[ErrorResponse]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code = None - self.message = None - self.target = None - self.details = None - self.additional_info = None - - -class Eventhub(Resource): - """Single item in List or Get Event Hub operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar partition_ids: Current number of shards on the Event Hub. - :vartype partition_ids: list[str] - :ivar created_at: Exact time the Event Hub was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar message_retention_in_days: Number of days to retain the events for this Event Hub, value - should be 1 to 7 days. - :vartype message_retention_in_days: int - :ivar partition_count: Number of partitions created for the Event Hub, allowed values are from - 1 to 32 partitions. - :vartype partition_count: int - :ivar status: Enumerates the possible values for the status of a Event Hub. Known values are: - "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", "Deleting", - "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2017_04_01.models.EntityStatus - :ivar capture_description: Properties of capture description. - :vartype capture_description: ~azure.mgmt.servicebus.v2017_04_01.models.CaptureDescription - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "partition_ids": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "message_retention_in_days": {"maximum": 7, "minimum": 1}, - "partition_count": {"maximum": 32, "minimum": 1}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "partition_ids": {"key": "properties.partitionIds", "type": "[str]"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "message_retention_in_days": {"key": "properties.messageRetentionInDays", "type": "int"}, - "partition_count": {"key": "properties.partitionCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "capture_description": {"key": "properties.captureDescription", "type": "CaptureDescription"}, - } - - def __init__( - self, - *, - message_retention_in_days: Optional[int] = None, - partition_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - capture_description: Optional["_models.CaptureDescription"] = None, - **kwargs: Any - ) -> None: - """ - :keyword message_retention_in_days: Number of days to retain the events for this Event Hub, - value should be 1 to 7 days. - :paramtype message_retention_in_days: int - :keyword partition_count: Number of partitions created for the Event Hub, allowed values are - from 1 to 32 partitions. - :paramtype partition_count: int - :keyword status: Enumerates the possible values for the status of a Event Hub. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2017_04_01.models.EntityStatus - :keyword capture_description: Properties of capture description. - :paramtype capture_description: ~azure.mgmt.servicebus.v2017_04_01.models.CaptureDescription - """ - super().__init__(**kwargs) - self.partition_ids = None - self.created_at = None - self.updated_at = None - self.message_retention_in_days = message_retention_in_days - self.partition_count = partition_count - self.status = status - self.capture_description = capture_description - - -class EventHubListResult(_serialization.Model): - """The result of the List EventHubs operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Result of the List EventHubs operation. - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.Eventhub] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of EventHubs. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Eventhub]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.Eventhub"]] = None, **kwargs: Any) -> None: - """ - :keyword value: Result of the List EventHubs operation. - :paramtype value: list[~azure.mgmt.servicebus.v2017_04_01.models.Eventhub] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class MessageCountDetails(_serialization.Model): - """Message Count Details. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar active_message_count: Number of active messages in the queue, topic, or subscription. - :vartype active_message_count: int - :ivar dead_letter_message_count: Number of messages that are dead lettered. - :vartype dead_letter_message_count: int - :ivar scheduled_message_count: Number of scheduled messages. - :vartype scheduled_message_count: int - :ivar transfer_message_count: Number of messages transferred to another queue, topic, or - subscription. - :vartype transfer_message_count: int - :ivar transfer_dead_letter_message_count: Number of messages transferred into dead letters. - :vartype transfer_dead_letter_message_count: int - """ - - _validation = { - "active_message_count": {"readonly": True}, - "dead_letter_message_count": {"readonly": True}, - "scheduled_message_count": {"readonly": True}, - "transfer_message_count": {"readonly": True}, - "transfer_dead_letter_message_count": {"readonly": True}, - } - - _attribute_map = { - "active_message_count": {"key": "activeMessageCount", "type": "int"}, - "dead_letter_message_count": {"key": "deadLetterMessageCount", "type": "int"}, - "scheduled_message_count": {"key": "scheduledMessageCount", "type": "int"}, - "transfer_message_count": {"key": "transferMessageCount", "type": "int"}, - "transfer_dead_letter_message_count": {"key": "transferDeadLetterMessageCount", "type": "int"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.active_message_count = None - self.dead_letter_message_count = None - self.scheduled_message_count = None - self.transfer_message_count = None - self.transfer_dead_letter_message_count = None - - -class MigrationConfigListResult(_serialization.Model): - """The result of the List migrationConfigurations operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Migration Configs. - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of migrationConfigurations. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[MigrationConfigProperties]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.MigrationConfigProperties"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Migration Configs. - :paramtype value: list[~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class MigrationConfigProperties(Resource): - """Single item in List or Get Migration Config operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar provisioning_state: Provisioning state of Migration Configuration. - :vartype provisioning_state: str - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar target_namespace: Existing premium Namespace ARM Id name which has no entities, will be - used for migration. - :vartype target_namespace: str - :ivar post_migration_name: Name to access Standard Namespace after migration. - :vartype post_migration_name: str - :ivar migration_state: State in which Standard to Premium Migration is, possible values : - Unknown, Reverting, Completing, Initiating, Syncing, Active. - :vartype migration_state: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "migration_state": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "target_namespace": {"key": "properties.targetNamespace", "type": "str"}, - "post_migration_name": {"key": "properties.postMigrationName", "type": "str"}, - "migration_state": {"key": "properties.migrationState", "type": "str"}, - } - - def __init__( - self, *, target_namespace: Optional[str] = None, post_migration_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword target_namespace: Existing premium Namespace ARM Id name which has no entities, will - be used for migration. - :paramtype target_namespace: str - :keyword post_migration_name: Name to access Standard Namespace after migration. - :paramtype post_migration_name: str - """ - super().__init__(**kwargs) - self.provisioning_state = None - self.pending_replication_operations_count = None - self.target_namespace = target_namespace - self.post_migration_name = post_migration_name - self.migration_state = None - - -class NetworkRuleSet(Resource): - """Description of NetworkRuleSet resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :vartype default_action: str or ~azure.mgmt.servicebus.v2017_04_01.models.DefaultAction - :ivar virtual_network_rules: List VirtualNetwork Rules. - :vartype virtual_network_rules: - list[~azure.mgmt.servicebus.v2017_04_01.models.NWRuleSetVirtualNetworkRules] - :ivar ip_rules: List of IpRules. - :vartype ip_rules: list[~azure.mgmt.servicebus.v2017_04_01.models.NWRuleSetIpRules] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "default_action": {"key": "properties.defaultAction", "type": "str"}, - "virtual_network_rules": {"key": "properties.virtualNetworkRules", "type": "[NWRuleSetVirtualNetworkRules]"}, - "ip_rules": {"key": "properties.ipRules", "type": "[NWRuleSetIpRules]"}, - } - - def __init__( - self, - *, - default_action: Optional[Union[str, "_models.DefaultAction"]] = None, - virtual_network_rules: Optional[List["_models.NWRuleSetVirtualNetworkRules"]] = None, - ip_rules: Optional[List["_models.NWRuleSetIpRules"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :paramtype default_action: str or ~azure.mgmt.servicebus.v2017_04_01.models.DefaultAction - :keyword virtual_network_rules: List VirtualNetwork Rules. - :paramtype virtual_network_rules: - list[~azure.mgmt.servicebus.v2017_04_01.models.NWRuleSetVirtualNetworkRules] - :keyword ip_rules: List of IpRules. - :paramtype ip_rules: list[~azure.mgmt.servicebus.v2017_04_01.models.NWRuleSetIpRules] - """ - super().__init__(**kwargs) - self.default_action = default_action - self.virtual_network_rules = virtual_network_rules - self.ip_rules = ip_rules - - -class NetworkRuleSetListResult(_serialization.Model): - """The response of the List NetworkRuleSet operation. - - :ivar value: Result of the List NetworkRuleSet operation. - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of NetworkRuleSet. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[NetworkRuleSet]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.NetworkRuleSet"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List NetworkRuleSet operation. - :paramtype value: list[~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of NetworkRuleSet. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class NWRuleSetIpRules(_serialization.Model): - """Description of NetWorkRuleSet - IpRules resource. - - :ivar ip_mask: IP Mask. - :vartype ip_mask: str - :ivar action: The IP Filter Action. "Allow" - :vartype action: str or ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleIPAction - """ - - _attribute_map = { - "ip_mask": {"key": "ipMask", "type": "str"}, - "action": {"key": "action", "type": "str"}, - } - - def __init__( - self, - *, - ip_mask: Optional[str] = None, - action: Union[str, "_models.NetworkRuleIPAction"] = "Allow", - **kwargs: Any - ) -> None: - """ - :keyword ip_mask: IP Mask. - :paramtype ip_mask: str - :keyword action: The IP Filter Action. "Allow" - :paramtype action: str or ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleIPAction - """ - super().__init__(**kwargs) - self.ip_mask = ip_mask - self.action = action - - -class NWRuleSetVirtualNetworkRules(_serialization.Model): - """Description of VirtualNetworkRules - NetworkRules resource. - - :ivar subnet: Subnet properties. - :vartype subnet: ~azure.mgmt.servicebus.v2017_04_01.models.Subnet - :ivar ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing VNet - Service Endpoint. - :vartype ignore_missing_vnet_service_endpoint: bool - """ - - _attribute_map = { - "subnet": {"key": "subnet", "type": "Subnet"}, - "ignore_missing_vnet_service_endpoint": {"key": "ignoreMissingVnetServiceEndpoint", "type": "bool"}, - } - - def __init__( - self, - *, - subnet: Optional["_models.Subnet"] = None, - ignore_missing_vnet_service_endpoint: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword subnet: Subnet properties. - :paramtype subnet: ~azure.mgmt.servicebus.v2017_04_01.models.Subnet - :keyword ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing - VNet Service Endpoint. - :paramtype ignore_missing_vnet_service_endpoint: bool - """ - super().__init__(**kwargs) - self.subnet = subnet - self.ignore_missing_vnet_service_endpoint = ignore_missing_vnet_service_endpoint - - -class Operation(_serialization.Model): - """A ServiceBus REST API operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar name: Operation name: {provider}/{resource}/{operation}. - :vartype name: str - :ivar display: The object that represents the operation. - :vartype display: ~azure.mgmt.servicebus.v2017_04_01.models.OperationDisplay - """ - - _validation = { - "name": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "display": {"key": "display", "type": "OperationDisplay"}, - } - - def __init__(self, *, display: Optional["_models.OperationDisplay"] = None, **kwargs: Any) -> None: - """ - :keyword display: The object that represents the operation. - :paramtype display: ~azure.mgmt.servicebus.v2017_04_01.models.OperationDisplay - """ - super().__init__(**kwargs) - self.name = None - self.display = display - - -class OperationDisplay(_serialization.Model): - """The object that represents the operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provider: Service provider: Microsoft.ServiceBus. - :vartype provider: str - :ivar resource: Resource on which the operation is performed: Invoice, etc. - :vartype resource: str - :ivar operation: Operation type: Read, write, delete, etc. - :vartype operation: str - """ - - _validation = { - "provider": {"readonly": True}, - "resource": {"readonly": True}, - "operation": {"readonly": True}, - } - - _attribute_map = { - "provider": {"key": "provider", "type": "str"}, - "resource": {"key": "resource", "type": "str"}, - "operation": {"key": "operation", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.provider = None - self.resource = None - self.operation = None - - -class OperationListResult(_serialization.Model): - """Result of the request to list ServiceBus operations. It contains a list of operations and a URL - link to get the next set of results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of ServiceBus operations supported by the Microsoft.ServiceBus resource - provider. - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.Operation] - :ivar next_link: URL to get the next set of operation list results if there are any. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Operation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value = None - self.next_link = None - - -class ResourceNamespacePatch(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: Optional[str] = None, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class PremiumMessagingRegions(ResourceNamespacePatch): - """Premium Messaging Region. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar properties: - :vartype properties: - ~azure.mgmt.servicebus.v2017_04_01.models.PremiumMessagingRegionsProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "properties": {"key": "properties", "type": "PremiumMessagingRegionsProperties"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - tags: Optional[Dict[str, str]] = None, - properties: Optional["_models.PremiumMessagingRegionsProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword properties: - :paramtype properties: - ~azure.mgmt.servicebus.v2017_04_01.models.PremiumMessagingRegionsProperties - """ - super().__init__(location=location, tags=tags, **kwargs) - self.properties = properties - - -class PremiumMessagingRegionsListResult(_serialization.Model): - """The response of the List PremiumMessagingRegions operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Result of the List PremiumMessagingRegions type. - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.PremiumMessagingRegions] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of PremiumMessagingRegions. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[PremiumMessagingRegions]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.PremiumMessagingRegions"]] = None, **kwargs: Any) -> None: - """ - :keyword value: Result of the List PremiumMessagingRegions type. - :paramtype value: list[~azure.mgmt.servicebus.v2017_04_01.models.PremiumMessagingRegions] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class PremiumMessagingRegionsProperties(_serialization.Model): - """PremiumMessagingRegionsProperties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: Region code. - :vartype code: str - :ivar full_name: Full name of the region. - :vartype full_name: str - """ - - _validation = { - "code": {"readonly": True}, - "full_name": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "full_name": {"key": "fullName", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code = None - self.full_name = None - - -class RegenerateAccessKeyParameters(_serialization.Model): - """Parameters supplied to the Regenerate Authorization Rule operation, specifies which key needs - to be reset. - - All required parameters must be populated in order to send to server. - - :ivar key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :vartype key_type: str or ~azure.mgmt.servicebus.v2017_04_01.models.KeyType - :ivar key: Optional, if the key value provided, is reset for KeyType value or autogenerate Key - value set for keyType. - :vartype key: str - """ - - _validation = { - "key_type": {"required": True}, - } - - _attribute_map = { - "key_type": {"key": "keyType", "type": "str"}, - "key": {"key": "key", "type": "str"}, - } - - def __init__(self, *, key_type: Union[str, "_models.KeyType"], key: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :paramtype key_type: str or ~azure.mgmt.servicebus.v2017_04_01.models.KeyType - :keyword key: Optional, if the key value provided, is reset for KeyType value or autogenerate - Key value set for keyType. - :paramtype key: str - """ - super().__init__(**kwargs) - self.key_type = key_type - self.key = key - - -class Rule(Resource): - """Description of Rule Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :vartype action: ~azure.mgmt.servicebus.v2017_04_01.models.Action - :ivar filter_type: Filter type that is evaluated against a BrokeredMessage. Known values are: - "SqlFilter" and "CorrelationFilter". - :vartype filter_type: str or ~azure.mgmt.servicebus.v2017_04_01.models.FilterType - :ivar sql_filter: Properties of sqlFilter. - :vartype sql_filter: ~azure.mgmt.servicebus.v2017_04_01.models.SqlFilter - :ivar correlation_filter: Properties of correlationFilter. - :vartype correlation_filter: ~azure.mgmt.servicebus.v2017_04_01.models.CorrelationFilter - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "action": {"key": "properties.action", "type": "Action"}, - "filter_type": {"key": "properties.filterType", "type": "str"}, - "sql_filter": {"key": "properties.sqlFilter", "type": "SqlFilter"}, - "correlation_filter": {"key": "properties.correlationFilter", "type": "CorrelationFilter"}, - } - - def __init__( - self, - *, - action: Optional["_models.Action"] = None, - filter_type: Optional[Union[str, "_models.FilterType"]] = None, - sql_filter: Optional["_models.SqlFilter"] = None, - correlation_filter: Optional["_models.CorrelationFilter"] = None, - **kwargs: Any - ) -> None: - """ - :keyword action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :paramtype action: ~azure.mgmt.servicebus.v2017_04_01.models.Action - :keyword filter_type: Filter type that is evaluated against a BrokeredMessage. Known values - are: "SqlFilter" and "CorrelationFilter". - :paramtype filter_type: str or ~azure.mgmt.servicebus.v2017_04_01.models.FilterType - :keyword sql_filter: Properties of sqlFilter. - :paramtype sql_filter: ~azure.mgmt.servicebus.v2017_04_01.models.SqlFilter - :keyword correlation_filter: Properties of correlationFilter. - :paramtype correlation_filter: ~azure.mgmt.servicebus.v2017_04_01.models.CorrelationFilter - """ - super().__init__(**kwargs) - self.action = action - self.filter_type = filter_type - self.sql_filter = sql_filter - self.correlation_filter = correlation_filter - - -class RuleListResult(_serialization.Model): - """The response of the List rule operation. - - :ivar value: Result of the List Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.Rule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[Rule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.Rule"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2017_04_01.models.Rule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBAuthorizationRule(Resource): - """Description of a namespace authorization rule. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar rights: The rights associated with the rule. - :vartype rights: list[str or ~azure.mgmt.servicebus.v2017_04_01.models.AccessRights] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "rights": {"key": "properties.rights", "type": "[str]"}, - } - - def __init__(self, *, rights: Optional[List[Union[str, "_models.AccessRights"]]] = None, **kwargs: Any) -> None: - """ - :keyword rights: The rights associated with the rule. - :paramtype rights: list[str or ~azure.mgmt.servicebus.v2017_04_01.models.AccessRights] - """ - super().__init__(**kwargs) - self.rights = rights - - -class SBAuthorizationRuleListResult(_serialization.Model): - """The response to the List Namespace operation. - - :ivar value: Result of the List Authorization Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Authorization Rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBAuthorizationRule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.SBAuthorizationRule"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Authorization Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Authorization Rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class TrackedResource(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class SBNamespace(TrackedResource): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of Sku. - :vartype sku: ~azure.mgmt.servicebus.v2017_04_01.models.SBSku - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - "provisioning_state": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - } - - def __init__( - self, - *, - location: str, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of Sku. - :paramtype sku: ~azure.mgmt.servicebus.v2017_04_01.models.SBSku - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.provisioning_state = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - - -class SBNamespaceListResult(_serialization.Model): - """The response of the List Namespace operation. - - :ivar value: Result of the List Namespace operation. - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Namespaces. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBNamespace]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBNamespace"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Namespace operation. - :paramtype value: list[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Namespaces. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBNamespaceMigrate(_serialization.Model): - """Namespace Migrate Object. - - All required parameters must be populated in order to send to server. - - :ivar target_namespace_type: Type of namespaces. Required. Known values are: "Messaging", - "NotificationHub", "Mixed", "EventHub", and "Relay". - :vartype target_namespace_type: str or ~azure.mgmt.servicebus.v2017_04_01.models.NameSpaceType - """ - - _validation = { - "target_namespace_type": {"required": True}, - } - - _attribute_map = { - "target_namespace_type": {"key": "targetNamespaceType", "type": "str"}, - } - - def __init__(self, *, target_namespace_type: Union[str, "_models.NameSpaceType"], **kwargs: Any) -> None: - """ - :keyword target_namespace_type: Type of namespaces. Required. Known values are: "Messaging", - "NotificationHub", "Mixed", "EventHub", and "Relay". - :paramtype target_namespace_type: str or - ~azure.mgmt.servicebus.v2017_04_01.models.NameSpaceType - """ - super().__init__(**kwargs) - self.target_namespace_type = target_namespace_type - - -class SBNamespaceUpdateParameters(ResourceNamespacePatch): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of Sku. - :vartype sku: ~azure.mgmt.servicebus.v2017_04_01.models.SBSku - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of Sku. - :paramtype sku: ~azure.mgmt.servicebus.v2017_04_01.models.SBSku - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.provisioning_state = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - - -class SBQueue(Resource): # pylint: disable=too-many-instance-attributes - """Description of queue Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2017_04_01.models.MessageCountDetails - :ivar created_at: The exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time a message was sent, or the last time there was a receive request - to this queue. - :vartype accessed_at: ~datetime.datetime - :ivar size_in_bytes: The size of the queue, in bytes. - :vartype size_in_bytes: int - :ivar message_count: The number of messages in the queue. - :vartype message_count: int - :ivar lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size of - memory allocated for the queue. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar requires_session: A value that indicates whether the queue supports the concept of - sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_message_expiration: A value that indicates whether this queue has dead - letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: The maximum delivery count. A message is automatically deadlettered - after this number of deliveries. default value is 10. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2017_04_01.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: A value that indicates whether the queue is to be partitioned across - multiple message brokers. - :vartype enable_partitioning: bool - :ivar enable_express: A value that indicates whether Express Entities are enabled. An express - queue holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "count_details": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "message_count": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size - of memory allocated for the queue. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword requires_session: A value that indicates whether the queue supports the concept of - sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_message_expiration: A value that indicates whether this queue has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: The maximum delivery count. A message is automatically - deadlettered after this number of deliveries. default value is 10. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2017_04_01.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: A value that indicates whether the queue is to be partitioned - across multiple message brokers. - :paramtype enable_partitioning: bool - :keyword enable_express: A value that indicates whether Express Entities are enabled. An - express queue holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - """ - super().__init__(**kwargs) - self.count_details = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.size_in_bytes = None - self.message_count = None - self.lock_duration = lock_duration - self.max_size_in_megabytes = max_size_in_megabytes - self.requires_duplicate_detection = requires_duplicate_detection - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - - -class SBQueueListResult(_serialization.Model): - """The response to the List Queues operation. - - :ivar value: Result of the List Queues operation. - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.SBQueue] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of queues. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBQueue]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBQueue"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Queues operation. - :paramtype value: list[~azure.mgmt.servicebus.v2017_04_01.models.SBQueue] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of queues. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBSku(_serialization.Model): - """SKU of the namespace. - - All required parameters must be populated in order to send to server. - - :ivar name: Name of this SKU. Required. Known values are: "Basic", "Standard", and "Premium". - :vartype name: str or ~azure.mgmt.servicebus.v2017_04_01.models.SkuName - :ivar tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", and - "Premium". - :vartype tier: str or ~azure.mgmt.servicebus.v2017_04_01.models.SkuTier - :ivar capacity: The specified messaging units for the tier. For Premium tier, capacity are 1,2 - and 4. - :vartype capacity: int - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "tier": {"key": "tier", "type": "str"}, - "capacity": {"key": "capacity", "type": "int"}, - } - - def __init__( - self, - *, - name: Union[str, "_models.SkuName"], - tier: Optional[Union[str, "_models.SkuTier"]] = None, - capacity: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Name of this SKU. Required. Known values are: "Basic", "Standard", and - "Premium". - :paramtype name: str or ~azure.mgmt.servicebus.v2017_04_01.models.SkuName - :keyword tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", - and "Premium". - :paramtype tier: str or ~azure.mgmt.servicebus.v2017_04_01.models.SkuTier - :keyword capacity: The specified messaging units for the tier. For Premium tier, capacity are - 1,2 and 4. - :paramtype capacity: int - """ - super().__init__(**kwargs) - self.name = name - self.tier = tier - self.capacity = capacity - - -class SBSubscription(Resource): # pylint: disable=too-many-instance-attributes - """Description of subscription resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar message_count: Number of messages. - :vartype message_count: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar accessed_at: Last time there was a receive request to this subscription. - :vartype accessed_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2017_04_01.models.MessageCountDetails - :ivar lock_duration: ISO 8061 lock duration timespan for the subscription. The default value is - 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar requires_session: Value indicating if a subscription supports the concept of sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :vartype dead_lettering_on_filter_evaluation_exceptions: bool - :ivar dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: Number of maximum deliveries. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2017_04_01.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "message_count": {"readonly": True}, - "created_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_filter_evaluation_exceptions": { - "key": "properties.deadLetteringOnFilterEvaluationExceptions", - "type": "bool", - }, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - } - - def __init__( - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_filter_evaluation_exceptions: Optional[bool] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8061 lock duration timespan for the subscription. The default value - is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword requires_session: Value indicating if a subscription supports the concept of sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :paramtype dead_lettering_on_filter_evaluation_exceptions: bool - :keyword dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: Number of maximum deliveries. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2017_04_01.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - """ - super().__init__(**kwargs) - self.message_count = None - self.created_at = None - self.accessed_at = None - self.updated_at = None - self.count_details = None - self.lock_duration = lock_duration - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_filter_evaluation_exceptions = dead_lettering_on_filter_evaluation_exceptions - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - - -class SBSubscriptionListResult(_serialization.Model): - """The response to the List Subscriptions operation. - - :ivar value: Result of the List Subscriptions operation. - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of subscriptions. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBSubscription]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBSubscription"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Subscriptions operation. - :paramtype value: list[~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of subscriptions. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBTopic(Resource): # pylint: disable=too-many-instance-attributes - """Description of topic resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar size_in_bytes: Size of the topic, in bytes. - :vartype size_in_bytes: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time the message was sent, or a request was received, for this topic. - :vartype accessed_at: ~datetime.datetime - :ivar subscription_count: Number of subscriptions. - :vartype subscription_count: int - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2017_04_01.models.MessageCountDetails - :ivar default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of the - memory allocated for the topic. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2017_04_01.models.EntityStatus - :ivar support_ordering: Value that indicates whether the topic supports ordering. - :vartype support_ordering: bool - :ivar auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :vartype enable_partitioning: bool - :ivar enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "subscription_count": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "subscription_count": {"key": "properties.subscriptionCount", "type": "int"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "status": {"key": "properties.status", "type": "str"}, - "support_ordering": {"key": "properties.supportOrdering", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - } - - def __init__( - self, - *, - default_message_time_to_live: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - enable_batched_operations: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - support_ordering: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of - the memory allocated for the topic. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2017_04_01.models.EntityStatus - :keyword support_ordering: Value that indicates whether the topic supports ordering. - :paramtype support_ordering: bool - :keyword auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :paramtype enable_partitioning: bool - :keyword enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - """ - super().__init__(**kwargs) - self.size_in_bytes = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.subscription_count = None - self.count_details = None - self.default_message_time_to_live = default_message_time_to_live - self.max_size_in_megabytes = max_size_in_megabytes - self.requires_duplicate_detection = requires_duplicate_detection - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.enable_batched_operations = enable_batched_operations - self.status = status - self.support_ordering = support_ordering - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - - -class SBTopicListResult(_serialization.Model): - """The response to the List Topics operation. - - :ivar value: Result of the List Topics operation. - :vartype value: list[~azure.mgmt.servicebus.v2017_04_01.models.SBTopic] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of topics. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBTopic]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBTopic"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Topics operation. - :paramtype value: list[~azure.mgmt.servicebus.v2017_04_01.models.SBTopic] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of topics. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SqlFilter(_serialization.Model): - """Represents a filter which is a composition of an expression and an action that is executed in - the pub/sub pipeline. - - :ivar sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _validation = { - "compatibility_level": {"maximum": 20, "minimum": 20}, - } - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: int = 20, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class SqlRuleAction(Action): - """Represents set of actions written in SQL language-based syntax that is performed against a - ServiceBus.Messaging.BrokeredMessage. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - -class Subnet(_serialization.Model): - """Properties supplied for Subnet. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource ID of Virtual Network Subnet. Required. - :vartype id: str - """ - - _validation = { - "id": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: str, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: Resource ID of Virtual Network Subnet. Required. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_service_bus_management_client_enums.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_service_bus_management_client_enums.py deleted file mode 100644 index ccd7445092c7..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/models/_service_bus_management_client_enums.py +++ /dev/null @@ -1,129 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from enum import Enum -from azure.core import CaseInsensitiveEnumMeta - - -class AccessRights(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """AccessRights.""" - - MANAGE = "Manage" - SEND = "Send" - LISTEN = "Listen" - - -class DefaultAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Default Action for Network Rule Set.""" - - ALLOW = "Allow" - DENY = "Deny" - - -class EncodingCaptureDescription(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Enumerates the possible values for the encoding format of capture description.""" - - AVRO = "Avro" - AVRO_DEFLATE = "AvroDeflate" - - -class EntityStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Entity status.""" - - ACTIVE = "Active" - DISABLED = "Disabled" - RESTORING = "Restoring" - SEND_DISABLED = "SendDisabled" - RECEIVE_DISABLED = "ReceiveDisabled" - CREATING = "Creating" - DELETING = "Deleting" - RENAMING = "Renaming" - UNKNOWN = "Unknown" - - -class FilterType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Rule filter types.""" - - SQL_FILTER = "SqlFilter" - CORRELATION_FILTER = "CorrelationFilter" - - -class KeyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The access key to regenerate.""" - - PRIMARY_KEY = "PrimaryKey" - SECONDARY_KEY = "SecondaryKey" - - -class MigrationConfigurationName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """MigrationConfigurationName.""" - - _DEFAULT = "$default" - - -class NameSpaceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Type of namespaces.""" - - MESSAGING = "Messaging" - NOTIFICATION_HUB = "NotificationHub" - MIXED = "Mixed" - EVENT_HUB = "EventHub" - RELAY = "Relay" - - -class NetworkRuleIPAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The IP Filter Action.""" - - ALLOW = "Allow" - - -class ProvisioningStateDR(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Alias(Disaster Recovery configuration) - possible values 'Accepted' - or 'Succeeded' or 'Failed'. - """ - - ACCEPTED = "Accepted" - SUCCEEDED = "Succeeded" - FAILED = "Failed" - - -class RoleDisasterRecovery(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' or - 'Secondary'. - """ - - PRIMARY = "Primary" - PRIMARY_NOT_REPLICATING = "PrimaryNotReplicating" - SECONDARY = "Secondary" - - -class SkuName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Name of this SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class SkuTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The billing tier of this particular SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class UnavailableReason(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Specifies the reason for the unavailability of the service.""" - - NONE = "None" - INVALID_NAME = "InvalidName" - SUBSCRIPTION_IS_DISABLED = "SubscriptionIsDisabled" - NAME_IN_USE = "NameInUse" - NAME_IN_LOCKDOWN = "NameInLockdown" - TOO_MANY_NAMESPACE_IN_CURRENT_SUBSCRIPTION = "TooManyNamespaceInCurrentSubscription" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/__init__.py deleted file mode 100644 index dbb5c8284b01..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/__init__.py +++ /dev/null @@ -1,39 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._event_hubs_operations import EventHubsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._operations import Operations -from ._premium_messaging_regions_operations import PremiumMessagingRegionsOperations -from ._rules_operations import RulesOperations -from ._regions_operations import RegionsOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "QueuesOperations", - "TopicsOperations", - "DisasterRecoveryConfigsOperations", - "EventHubsOperations", - "MigrationConfigsOperations", - "Operations", - "PremiumMessagingRegionsOperations", - "RulesOperations", - "RegionsOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index 1f52ea3b68a1..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,1226 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_check_name_availability_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/CheckNameAvailability", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_break_pairing_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/breakPairing", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_fail_over_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/failover", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/AuthorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/AuthorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailability or IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery or IO[bytes] - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.ArmDisasterRecovery]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - if response.status_code == 200: - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def fail_over( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_event_hubs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_event_hubs_operations.py deleted file mode 100644 index 4be8010fe372..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_event_hubs_operations.py +++ /dev/null @@ -1,176 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_namespace_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/eventhubs", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class EventHubsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.ServiceBusManagementClient`'s - :attr:`event_hubs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_namespace( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.Eventhub"]: - """Gets all the Event Hubs in a service bus Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either Eventhub or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.Eventhub] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.EventHubListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("EventHubListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_migration_configs_operations.py deleted file mode 100644 index d525d997e8a0..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_migration_configs_operations.py +++ /dev/null @@ -1,831 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_and_start_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_complete_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/upgrade", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_revert_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/revert", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties or - IO[bytes] - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2017_04_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_namespaces_operations.py deleted file mode 100644 index 5c58ce681fdc..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_namespaces_operations.py +++ /dev/null @@ -1,2357 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_check_name_availability_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/CheckNameAvailability" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_migrate_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrate", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/namespaces") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_network_rule_set_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_network_rule_set_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_network_rule_sets_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailability or IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceMigrate, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespaceMigrate - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceMigrate, IO[bytes]], - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Is either a - SBNamespaceMigrate type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespaceMigrate or IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceMigrate") - - _request = build_migrate_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace or IO[bytes] - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _delete_initial(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> LROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespaceUpdateParameters or - IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_operations.py deleted file mode 100644 index 464fd0160804..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_operations.py +++ /dev/null @@ -1,153 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.ServiceBus/operations") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_premium_messaging_regions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_premium_messaging_regions_operations.py deleted file mode 100644 index af809d8d1362..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_premium_messaging_regions_operations.py +++ /dev/null @@ -1,163 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/premiumMessagingRegions" - ) # pylint: disable=line-too-long - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PremiumMessagingRegionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.ServiceBusManagementClient`'s - :attr:`premium_messaging_regions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.PremiumMessagingRegions"]: - """Gets the available premium messaging regions for servicebus. - - :return: An iterator like instance of either PremiumMessagingRegions or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.PremiumMessagingRegions] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.PremiumMessagingRegionsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PremiumMessagingRegionsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_queues_operations.py deleted file mode 100644 index 191e95079272..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_queues_operations.py +++ /dev/null @@ -1,1431 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_regions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_regions_operations.py deleted file mode 100644 index 831da7c2250c..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_regions_operations.py +++ /dev/null @@ -1,167 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_sku_request(sku: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/sku/{sku}/regions" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "sku": _SERIALIZER.url("sku", sku, "str", max_length=50, min_length=1), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RegionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.ServiceBusManagementClient`'s - :attr:`regions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_sku(self, sku: str, **kwargs: Any) -> Iterable["_models.PremiumMessagingRegions"]: - """Gets the available Regions for a given sku. - - :param sku: The sku type. Required. - :type sku: str - :return: An iterator like instance of either PremiumMessagingRegions or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.PremiumMessagingRegions] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.PremiumMessagingRegionsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_sku_request( - sku=sku, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PremiumMessagingRegionsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_rules_operations.py deleted file mode 100644 index eba01c1e505f..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_rules_operations.py +++ /dev/null @@ -1,640 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscriptions_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_subscriptions_operations.py deleted file mode 100644 index ba19197c7b5b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_subscriptions_operations.py +++ /dev/null @@ -1,618 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_topic_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_topics_operations.py deleted file mode 100644 index a525bd7955e9..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/operations/_topics_operations.py +++ /dev/null @@ -1,1440 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2017-04-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2017_04_01.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2017_04_01.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2017_04_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2017-04-01")) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/py.typed b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/py.typed deleted file mode 100644 index e5aff4f83af8..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2017_04_01/py.typed +++ /dev/null @@ -1 +0,0 @@ -# Marker file for PEP 561. \ No newline at end of file diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/__init__.py deleted file mode 100644 index 2e171d69863b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/__init__.py +++ /dev/null @@ -1,26 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient -from ._version import VERSION - -__version__ = VERSION - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_configuration.py deleted file mode 100644 index 467bc52bfbc5..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy - -from ._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2018-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2018-01-01-preview") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = ARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_metadata.json b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_metadata.json deleted file mode 100644 index f09a9d15fc40..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_metadata.json +++ /dev/null @@ -1,122 +0,0 @@ -{ - "chosen_version": "2018-01-01-preview", - "total_api_version_list": ["2018-01-01-preview"], - "client": { - "name": "ServiceBusManagementClient", - "filename": "_service_bus_management_client", - "description": "Azure Service Bus client for managing Namespace, IPFilter Rules, VirtualNetworkRules and Zone Redundant.", - "host_value": "\"https://management.azure.com\"", - "parameterized_host_template": null, - "azure_arm": true, - "has_public_lro_operations": true, - "client_side_validation": false, - "sync_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"ARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \".._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"AsyncARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"AsyncARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \"..._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "global_parameters": { - "sync": { - "credential": { - "signature": "credential: \"TokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials.TokenCredential", - "required": true, - "method_location": "positional" - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true, - "method_location": "positional" - } - }, - "async": { - "credential": { - "signature": "credential: \"AsyncTokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials_async.AsyncTokenCredential", - "required": true - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true - } - }, - "constant": { - }, - "call": "credential, subscription_id", - "service_client_specific": { - "sync": { - "api_version": { - "signature": "api_version: Optional[str]=None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles=KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - }, - "async": { - "api_version": { - "signature": "api_version: Optional[str] = None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles = KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - } - } - }, - "config": { - "credential": true, - "credential_scopes": ["https://management.azure.com/.default"], - "credential_call_sync": "ARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "credential_call_async": "AsyncARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "sync_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMChallengeAuthenticationPolicy\", \"ARMHttpLoggingPolicy\"]}, \"local\": {\"._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMHttpLoggingPolicy\", \"AsyncARMChallengeAuthenticationPolicy\"]}, \"local\": {\".._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "operation_groups": { - "namespaces": "NamespacesOperations", - "private_endpoint_connections": "PrivateEndpointConnectionsOperations", - "private_link_resources": "PrivateLinkResourcesOperations", - "disaster_recovery_configs": "DisasterRecoveryConfigsOperations", - "queues": "QueuesOperations", - "topics": "TopicsOperations", - "event_hubs": "EventHubsOperations", - "migration_configs": "MigrationConfigsOperations", - "premium_messaging_regions": "PremiumMessagingRegionsOperations", - "regions": "RegionsOperations", - "subscriptions": "SubscriptionsOperations", - "rules": "RulesOperations", - "operations": "Operations" - } -} diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_service_bus_management_client.py deleted file mode 100644 index 29a1aebd70d5..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_service_bus_management_client.py +++ /dev/null @@ -1,196 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import HttpRequest, HttpResponse -from azure.mgmt.core import ARMPipelineClient -from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy - -from . import models as _models -from .._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - EventHubsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PremiumMessagingRegionsOperations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RegionsOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace, IPFilter Rules, VirtualNetworkRules and Zone - Redundant. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: azure.mgmt.servicebus.v2018_01_01_preview.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2018_01_01_preview.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2018_01_01_preview.operations.PrivateLinkResourcesOperations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2018_01_01_preview.operations.DisasterRecoveryConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2018_01_01_preview.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2018_01_01_preview.operations.TopicsOperations - :ivar event_hubs: EventHubsOperations operations - :vartype event_hubs: azure.mgmt.servicebus.v2018_01_01_preview.operations.EventHubsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2018_01_01_preview.operations.MigrationConfigsOperations - :ivar premium_messaging_regions: PremiumMessagingRegionsOperations operations - :vartype premium_messaging_regions: - azure.mgmt.servicebus.v2018_01_01_preview.operations.PremiumMessagingRegionsOperations - :ivar regions: RegionsOperations operations - :vartype regions: azure.mgmt.servicebus.v2018_01_01_preview.operations.RegionsOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2018_01_01_preview.operations.SubscriptionsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2018_01_01_preview.operations.RulesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2018_01_01_preview.operations.Operations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2018-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "TokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - ARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.queues = QueuesOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.topics = TopicsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.event_hubs = EventHubsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.premium_messaging_regions = PremiumMessagingRegionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.regions = RegionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.rules = RulesOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.operations = Operations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - - def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.HttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - def close(self) -> None: - self._client.close() - - def __enter__(self) -> Self: - self._client.__enter__() - return self - - def __exit__(self, *exc_details: Any) -> None: - self._client.__exit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_version.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_version.py deleted file mode 100644 index 22d4eb39aa93..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/_version.py +++ /dev/null @@ -1,9 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -VERSION = "8.2.1" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/__init__.py deleted file mode 100644 index 530b8638dfd3..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_configuration.py deleted file mode 100644 index 3939730ee607..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMHttpLoggingPolicy, AsyncARMChallengeAuthenticationPolicy - -from .._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2018-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2018-01-01-preview") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.AsyncRedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.AsyncRetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = AsyncARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_service_bus_management_client.py deleted file mode 100644 index 72090fa3bcbc..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/_service_bus_management_client.py +++ /dev/null @@ -1,200 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, Awaitable, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.mgmt.core import AsyncARMPipelineClient -from azure.mgmt.core.policies import AsyncARMAutoResourceProviderRegistrationPolicy - -from .. import models as _models -from ..._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - EventHubsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PremiumMessagingRegionsOperations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RegionsOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace, IPFilter Rules, VirtualNetworkRules and Zone - Redundant. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: - azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.PrivateLinkResourcesOperations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.DisasterRecoveryConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.TopicsOperations - :ivar event_hubs: EventHubsOperations operations - :vartype event_hubs: - azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.EventHubsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.MigrationConfigsOperations - :ivar premium_messaging_regions: PremiumMessagingRegionsOperations operations - :vartype premium_messaging_regions: - azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.PremiumMessagingRegionsOperations - :ivar regions: RegionsOperations operations - :vartype regions: azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.RegionsOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.SubscriptionsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.RulesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2018_01_01_preview.aio.operations.Operations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2018-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "AsyncTokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - AsyncARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.queues = QueuesOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.topics = TopicsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.event_hubs = EventHubsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.premium_messaging_regions = PremiumMessagingRegionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.regions = RegionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.rules = RulesOperations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - self.operations = Operations( - self._client, self._config, self._serialize, self._deserialize, "2018-01-01-preview" - ) - - def _send_request( - self, request: HttpRequest, *, stream: bool = False, **kwargs: Any - ) -> Awaitable[AsyncHttpResponse]: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = await client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.AsyncHttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - async def close(self) -> None: - await self._client.close() - - async def __aenter__(self) -> Self: - await self._client.__aenter__() - return self - - async def __aexit__(self, *exc_details: Any) -> None: - await self._client.__aexit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/__init__.py deleted file mode 100644 index 7209ae076025..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/__init__.py +++ /dev/null @@ -1,43 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._event_hubs_operations import EventHubsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._premium_messaging_regions_operations import PremiumMessagingRegionsOperations -from ._regions_operations import RegionsOperations -from ._subscriptions_operations import SubscriptionsOperations -from ._rules_operations import RulesOperations -from ._operations import Operations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "DisasterRecoveryConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "EventHubsOperations", - "MigrationConfigsOperations", - "PremiumMessagingRegionsOperations", - "RegionsOperations", - "SubscriptionsOperations", - "RulesOperations", - "Operations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index d0ce22f848be..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,981 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._disaster_recovery_configs_operations import ( - build_break_pairing_request, - build_check_name_availability_request, - build_create_or_update_request, - build_delete_request, - build_fail_over_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_keys_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery or - IO[bytes] - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.ArmDisasterRecovery]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - if response.status_code == 200: - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.FailoverProperties or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_event_hubs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_event_hubs_operations.py deleted file mode 100644 index f839c7403d2c..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_event_hubs_operations.py +++ /dev/null @@ -1,143 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._event_hubs_operations import build_list_by_namespace_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class EventHubsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`event_hubs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_namespace( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.Eventhub"]: - """Gets all the Event Hubs in a service bus Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either Eventhub or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.Eventhub] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.EventHubListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("EventHubListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_migration_configs_operations.py deleted file mode 100644 index 7f8ef99342da..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_migration_configs_operations.py +++ /dev/null @@ -1,631 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._migration_configs_operations import ( - build_complete_migration_request, - build_create_and_start_migration_request, - build_delete_request, - build_get_request, - build_list_request, - build_revert_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties - or IO[bytes] - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_namespaces_operations.py deleted file mode 100644 index 6ea76d5c3bee..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_namespaces_operations.py +++ /dev/null @@ -1,2546 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._namespaces_operations import ( - build_check_name_availability_request, - build_create_or_update_authorization_rule_request, - build_create_or_update_ip_filter_rule_request, - build_create_or_update_network_rule_set_request, - build_create_or_update_request, - build_create_or_update_virtual_network_rule_request, - build_delete_authorization_rule_request, - build_delete_ip_filter_rule_request, - build_delete_request, - build_delete_virtual_network_rule_request, - build_get_authorization_rule_request, - build_get_ip_filter_rule_request, - build_get_network_rule_set_request, - build_get_request, - build_get_virtual_network_rule_request, - build_list_authorization_rules_request, - build_list_by_resource_group_request, - build_list_ip_filter_rules_request, - build_list_keys_request, - build_list_network_rule_sets_request, - build_list_request, - build_list_virtual_network_rules_request, - build_migrate_request, - build_regenerate_keys_request, - build_update_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class NamespacesOperations: # pylint: disable=too-many-public-methods - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_ip_filter_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.IpFilterRule"]: - """Gets a list of IP Filter rules for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either IpFilterRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.IpFilterRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_ip_filter_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("IpFilterRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_ip_filter_rule( - self, - resource_group_name: str, - namespace_name: str, - ip_filter_rule_name: str, - parameters: _models.IpFilterRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IpFilterRule: - """Creates or updates an IpFilterRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param ip_filter_rule_name: The IP Filter Rule name. Required. - :type ip_filter_rule_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: IpFilterRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_ip_filter_rule( - self, - resource_group_name: str, - namespace_name: str, - ip_filter_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IpFilterRule: - """Creates or updates an IpFilterRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param ip_filter_rule_name: The IP Filter Rule name. Required. - :type ip_filter_rule_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: IpFilterRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_ip_filter_rule( - self, - resource_group_name: str, - namespace_name: str, - ip_filter_rule_name: str, - parameters: Union[_models.IpFilterRule, IO[bytes]], - **kwargs: Any - ) -> _models.IpFilterRule: - """Creates or updates an IpFilterRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param ip_filter_rule_name: The IP Filter Rule name. Required. - :type ip_filter_rule_name: str - :param parameters: The Namespace IpFilterRule. Is either a IpFilterRule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule or IO[bytes] - :return: IpFilterRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.IpFilterRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "IpFilterRule") - - _request = build_create_or_update_ip_filter_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - ip_filter_rule_name=ip_filter_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IpFilterRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_ip_filter_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, ip_filter_rule_name: str, **kwargs: Any - ) -> None: - """Deletes an IpFilterRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param ip_filter_rule_name: The IP Filter Rule name. Required. - :type ip_filter_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_ip_filter_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - ip_filter_rule_name=ip_filter_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_ip_filter_rule( - self, resource_group_name: str, namespace_name: str, ip_filter_rule_name: str, **kwargs: Any - ) -> _models.IpFilterRule: - """Gets an IpFilterRule for a Namespace by rule name. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param ip_filter_rule_name: The IP Filter Rule name. Required. - :type ip_filter_rule_name: str - :return: IpFilterRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.IpFilterRule] = kwargs.pop("cls", None) - - _request = build_get_ip_filter_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - ip_filter_rule_name=ip_filter_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IpFilterRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace or IO[bytes] - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> AsyncLROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespaceUpdateParameters - or IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_virtual_network_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.VirtualNetworkRule"]: - """Gets a list of VirtualNetwork rules for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either VirtualNetworkRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.VirtualNetworkRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_virtual_network_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("VirtualNetworkRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_virtual_network_rule( - self, - resource_group_name: str, - namespace_name: str, - virtual_network_rule_name: str, - parameters: _models.VirtualNetworkRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.VirtualNetworkRule: - """Creates or updates an VirtualNetworkRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param virtual_network_rule_name: The Virtual Network Rule name. Required. - :type virtual_network_rule_name: str - :param parameters: The Namespace VirtualNetworkRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: VirtualNetworkRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_virtual_network_rule( - self, - resource_group_name: str, - namespace_name: str, - virtual_network_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.VirtualNetworkRule: - """Creates or updates an VirtualNetworkRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param virtual_network_rule_name: The Virtual Network Rule name. Required. - :type virtual_network_rule_name: str - :param parameters: The Namespace VirtualNetworkRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: VirtualNetworkRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_virtual_network_rule( - self, - resource_group_name: str, - namespace_name: str, - virtual_network_rule_name: str, - parameters: Union[_models.VirtualNetworkRule, IO[bytes]], - **kwargs: Any - ) -> _models.VirtualNetworkRule: - """Creates or updates an VirtualNetworkRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param virtual_network_rule_name: The Virtual Network Rule name. Required. - :type virtual_network_rule_name: str - :param parameters: The Namespace VirtualNetworkRule. Is either a VirtualNetworkRule type or a - IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule or - IO[bytes] - :return: VirtualNetworkRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.VirtualNetworkRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "VirtualNetworkRule") - - _request = build_create_or_update_virtual_network_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - virtual_network_rule_name=virtual_network_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("VirtualNetworkRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_virtual_network_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, virtual_network_rule_name: str, **kwargs: Any - ) -> None: - """Deletes an VirtualNetworkRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param virtual_network_rule_name: The Virtual Network Rule name. Required. - :type virtual_network_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_virtual_network_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - virtual_network_rule_name=virtual_network_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_virtual_network_rule( - self, resource_group_name: str, namespace_name: str, virtual_network_rule_name: str, **kwargs: Any - ) -> _models.VirtualNetworkRule: - """Gets an VirtualNetworkRule for a Namespace by rule name. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param virtual_network_rule_name: The Virtual Network Rule name. Required. - :type virtual_network_rule_name: str - :return: VirtualNetworkRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.VirtualNetworkRule] = kwargs.pop("cls", None) - - _request = build_get_virtual_network_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - virtual_network_rule_name=virtual_network_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("VirtualNetworkRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceMigrate, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespaceMigrate - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceMigrate, IO[bytes]], - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Is either a - SBNamespaceMigrate type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespaceMigrate or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceMigrate") - - _request = build_migrate_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_operations.py deleted file mode 100644 index 66106918f183..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_operations.py +++ /dev/null @@ -1,134 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._operations import build_list_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_premium_messaging_regions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_premium_messaging_regions_operations.py deleted file mode 100644 index aeda6f31a863..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_premium_messaging_regions_operations.py +++ /dev/null @@ -1,136 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._premium_messaging_regions_operations import build_list_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PremiumMessagingRegionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`premium_messaging_regions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.PremiumMessagingRegions"]: - """Gets the available premium messaging regions for servicebus. - - :return: An iterator like instance of either PremiumMessagingRegions or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.PremiumMessagingRegions] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.PremiumMessagingRegionsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PremiumMessagingRegionsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index 87fb9e01bb49..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,491 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._private_endpoint_connections_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - or IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncLROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_private_link_resources_operations.py deleted file mode 100644 index 51b381d13790..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,117 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._private_link_resources_operations import build_get_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_queues_operations.py deleted file mode 100644 index c1ef3d117692..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_queues_operations.py +++ /dev/null @@ -1,1067 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._queues_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_regions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_regions_operations.py deleted file mode 100644 index 61457707c8af..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_regions_operations.py +++ /dev/null @@ -1,139 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._regions_operations import build_list_by_sku_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class RegionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`regions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_sku(self, sku: str, **kwargs: Any) -> AsyncIterable["_models.PremiumMessagingRegions"]: - """Gets the available Regions for a given sku. - - :param sku: The sku type. Required. - :type sku: str - :return: An iterator like instance of either PremiumMessagingRegions or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.PremiumMessagingRegions] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.PremiumMessagingRegionsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_sku_request( - sku=sku, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PremiumMessagingRegionsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_rules_operations.py deleted file mode 100644 index 70289720ffb5..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_rules_operations.py +++ /dev/null @@ -1,476 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._rules_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_subscriptions_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_subscriptions_operations.py deleted file mode 100644 index 2cecb436738b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_subscriptions_operations.py +++ /dev/null @@ -1,462 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._subscriptions_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_topic_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_topics_operations.py deleted file mode 100644 index fdec483a4049..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/aio/operations/_topics_operations.py +++ /dev/null @@ -1,1076 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._topics_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/__init__.py deleted file mode 100644 index 490670e8543a..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/__init__.py +++ /dev/null @@ -1,177 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._models_py3 import AccessKeys -from ._models_py3 import Action -from ._models_py3 import ArmDisasterRecovery -from ._models_py3 import ArmDisasterRecoveryListResult -from ._models_py3 import CaptureDescription -from ._models_py3 import CheckNameAvailability -from ._models_py3 import CheckNameAvailabilityResult -from ._models_py3 import ConnectionState -from ._models_py3 import CorrelationFilter -from ._models_py3 import Destination -from ._models_py3 import Encryption -from ._models_py3 import ErrorAdditionalInfo -from ._models_py3 import ErrorResponse -from ._models_py3 import ErrorResponseError -from ._models_py3 import EventHubListResult -from ._models_py3 import Eventhub -from ._models_py3 import FailoverProperties -from ._models_py3 import Identity -from ._models_py3 import IpFilterRule -from ._models_py3 import IpFilterRuleListResult -from ._models_py3 import KeyVaultProperties -from ._models_py3 import MessageCountDetails -from ._models_py3 import MigrationConfigListResult -from ._models_py3 import MigrationConfigProperties -from ._models_py3 import NWRuleSetIpRules -from ._models_py3 import NWRuleSetVirtualNetworkRules -from ._models_py3 import NetworkRuleSet -from ._models_py3 import NetworkRuleSetListResult -from ._models_py3 import Operation -from ._models_py3 import OperationDisplay -from ._models_py3 import OperationListResult -from ._models_py3 import PremiumMessagingRegions -from ._models_py3 import PremiumMessagingRegionsListResult -from ._models_py3 import PremiumMessagingRegionsProperties -from ._models_py3 import PrivateEndpoint -from ._models_py3 import PrivateEndpointConnection -from ._models_py3 import PrivateEndpointConnectionListResult -from ._models_py3 import PrivateLinkResource -from ._models_py3 import PrivateLinkResourcesListResult -from ._models_py3 import RegenerateAccessKeyParameters -from ._models_py3 import Resource -from ._models_py3 import ResourceNamespacePatch -from ._models_py3 import Rule -from ._models_py3 import RuleListResult -from ._models_py3 import SBAuthorizationRule -from ._models_py3 import SBAuthorizationRuleListResult -from ._models_py3 import SBNamespace -from ._models_py3 import SBNamespaceListResult -from ._models_py3 import SBNamespaceMigrate -from ._models_py3 import SBNamespaceUpdateParameters -from ._models_py3 import SBQueue -from ._models_py3 import SBQueueListResult -from ._models_py3 import SBSku -from ._models_py3 import SBSubscription -from ._models_py3 import SBSubscriptionListResult -from ._models_py3 import SBTopic -from ._models_py3 import SBTopicListResult -from ._models_py3 import SqlFilter -from ._models_py3 import SqlRuleAction -from ._models_py3 import Subnet -from ._models_py3 import TrackedResource -from ._models_py3 import VirtualNetworkRule -from ._models_py3 import VirtualNetworkRuleListResult - -from ._service_bus_management_client_enums import AccessRights -from ._service_bus_management_client_enums import DefaultAction -from ._service_bus_management_client_enums import EncodingCaptureDescription -from ._service_bus_management_client_enums import EndPointProvisioningState -from ._service_bus_management_client_enums import EntityStatus -from ._service_bus_management_client_enums import FilterType -from ._service_bus_management_client_enums import IPAction -from ._service_bus_management_client_enums import KeyType -from ._service_bus_management_client_enums import MigrationConfigurationName -from ._service_bus_management_client_enums import NameSpaceType -from ._service_bus_management_client_enums import NetworkRuleIPAction -from ._service_bus_management_client_enums import PrivateLinkConnectionStatus -from ._service_bus_management_client_enums import ProvisioningStateDR -from ._service_bus_management_client_enums import RoleDisasterRecovery -from ._service_bus_management_client_enums import SkuName -from ._service_bus_management_client_enums import SkuTier -from ._service_bus_management_client_enums import UnavailableReason -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "AccessKeys", - "Action", - "ArmDisasterRecovery", - "ArmDisasterRecoveryListResult", - "CaptureDescription", - "CheckNameAvailability", - "CheckNameAvailabilityResult", - "ConnectionState", - "CorrelationFilter", - "Destination", - "Encryption", - "ErrorAdditionalInfo", - "ErrorResponse", - "ErrorResponseError", - "EventHubListResult", - "Eventhub", - "FailoverProperties", - "Identity", - "IpFilterRule", - "IpFilterRuleListResult", - "KeyVaultProperties", - "MessageCountDetails", - "MigrationConfigListResult", - "MigrationConfigProperties", - "NWRuleSetIpRules", - "NWRuleSetVirtualNetworkRules", - "NetworkRuleSet", - "NetworkRuleSetListResult", - "Operation", - "OperationDisplay", - "OperationListResult", - "PremiumMessagingRegions", - "PremiumMessagingRegionsListResult", - "PremiumMessagingRegionsProperties", - "PrivateEndpoint", - "PrivateEndpointConnection", - "PrivateEndpointConnectionListResult", - "PrivateLinkResource", - "PrivateLinkResourcesListResult", - "RegenerateAccessKeyParameters", - "Resource", - "ResourceNamespacePatch", - "Rule", - "RuleListResult", - "SBAuthorizationRule", - "SBAuthorizationRuleListResult", - "SBNamespace", - "SBNamespaceListResult", - "SBNamespaceMigrate", - "SBNamespaceUpdateParameters", - "SBQueue", - "SBQueueListResult", - "SBSku", - "SBSubscription", - "SBSubscriptionListResult", - "SBTopic", - "SBTopicListResult", - "SqlFilter", - "SqlRuleAction", - "Subnet", - "TrackedResource", - "VirtualNetworkRule", - "VirtualNetworkRuleListResult", - "AccessRights", - "DefaultAction", - "EncodingCaptureDescription", - "EndPointProvisioningState", - "EntityStatus", - "FilterType", - "IPAction", - "KeyType", - "MigrationConfigurationName", - "NameSpaceType", - "NetworkRuleIPAction", - "PrivateLinkConnectionStatus", - "ProvisioningStateDR", - "RoleDisasterRecovery", - "SkuName", - "SkuTier", - "UnavailableReason", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_models_py3.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_models_py3.py deleted file mode 100644 index cf799e68648d..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_models_py3.py +++ /dev/null @@ -1,3129 +0,0 @@ -# coding=utf-8 -# pylint: disable=too-many-lines -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -import datetime -from typing import Any, Dict, List, Literal, Optional, TYPE_CHECKING, Union - -from ... import _serialization - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from .. import models as _models - - -class AccessKeys(_serialization.Model): - """Namespace/ServiceBus Connection String. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar primary_connection_string: Primary connection string of the created namespace - authorization rule. - :vartype primary_connection_string: str - :ivar secondary_connection_string: Secondary connection string of the created namespace - authorization rule. - :vartype secondary_connection_string: str - :ivar alias_primary_connection_string: Primary connection string of the alias if GEO DR is - enabled. - :vartype alias_primary_connection_string: str - :ivar alias_secondary_connection_string: Secondary connection string of the alias if GEO DR is - enabled. - :vartype alias_secondary_connection_string: str - :ivar primary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype primary_key: str - :ivar secondary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype secondary_key: str - :ivar key_name: A string that describes the authorization rule. - :vartype key_name: str - """ - - _validation = { - "primary_connection_string": {"readonly": True}, - "secondary_connection_string": {"readonly": True}, - "alias_primary_connection_string": {"readonly": True}, - "alias_secondary_connection_string": {"readonly": True}, - "primary_key": {"readonly": True}, - "secondary_key": {"readonly": True}, - "key_name": {"readonly": True}, - } - - _attribute_map = { - "primary_connection_string": {"key": "primaryConnectionString", "type": "str"}, - "secondary_connection_string": {"key": "secondaryConnectionString", "type": "str"}, - "alias_primary_connection_string": {"key": "aliasPrimaryConnectionString", "type": "str"}, - "alias_secondary_connection_string": {"key": "aliasSecondaryConnectionString", "type": "str"}, - "primary_key": {"key": "primaryKey", "type": "str"}, - "secondary_key": {"key": "secondaryKey", "type": "str"}, - "key_name": {"key": "keyName", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.primary_connection_string = None - self.secondary_connection_string = None - self.alias_primary_connection_string = None - self.alias_secondary_connection_string = None - self.primary_key = None - self.secondary_key = None - self.key_name = None - - -class Action(_serialization.Model): - """Represents the filter actions which are allowed for the transformation of a message that have - been matched by a filter expression. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: Optional[int] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class Resource(_serialization.Model): - """The Resource definition for other than namespace. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id = None - self.name = None - self.type = None - - -class ArmDisasterRecovery(Resource): - """Single item in List or Get Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar provisioning_state: Provisioning state of the Alias(Disaster Recovery configuration) - - possible values 'Accepted' or 'Succeeded' or 'Failed'. Known values are: "Accepted", - "Succeeded", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.ProvisioningStateDR - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is part - of GEO DR pairing. - :vartype partner_namespace: str - :ivar alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :vartype alternate_name: str - :ivar role: role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' - or 'Secondary'. Known values are: "Primary", "PrimaryNotReplicating", and "Secondary". - :vartype role: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.RoleDisasterRecovery - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "role": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "partner_namespace": {"key": "properties.partnerNamespace", "type": "str"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - "role": {"key": "properties.role", "type": "str"}, - } - - def __init__( - self, *, partner_namespace: Optional[str] = None, alternate_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is - part of GEO DR pairing. - :paramtype partner_namespace: str - :keyword alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :paramtype alternate_name: str - """ - super().__init__(**kwargs) - self.provisioning_state = None - self.pending_replication_operations_count = None - self.partner_namespace = partner_namespace - self.alternate_name = alternate_name - self.role = None - - -class ArmDisasterRecoveryListResult(_serialization.Model): - """The result of the List Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Alias(Disaster Recovery configurations). - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Alias(Disaster Recovery configuration). - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[ArmDisasterRecovery]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.ArmDisasterRecovery"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Alias(Disaster Recovery configurations). - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class CaptureDescription(_serialization.Model): - """Properties to configure capture description for eventhub. - - :ivar enabled: A value that indicates whether capture description is enabled. - :vartype enabled: bool - :ivar encoding: Enumerates the possible values for the encoding format of capture description. - Known values are: "Avro" and "AvroDeflate". - :vartype encoding: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.EncodingCaptureDescription - :ivar interval_in_seconds: The time window allows you to set the frequency with which the - capture to Azure Blobs will happen, value should between 60 to 900 seconds. - :vartype interval_in_seconds: int - :ivar size_limit_in_bytes: The size window defines the amount of data built up in your Event - Hub before an capture operation, value should be between 10485760 and 524288000 bytes. - :vartype size_limit_in_bytes: int - :ivar destination: Properties of Destination where capture will be stored. (Storage Account, - Blob Names). - :vartype destination: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Destination - """ - - _validation = { - "interval_in_seconds": {"maximum": 900, "minimum": 60}, - "size_limit_in_bytes": {"maximum": 524288000, "minimum": 10485760}, - } - - _attribute_map = { - "enabled": {"key": "enabled", "type": "bool"}, - "encoding": {"key": "encoding", "type": "str"}, - "interval_in_seconds": {"key": "intervalInSeconds", "type": "int"}, - "size_limit_in_bytes": {"key": "sizeLimitInBytes", "type": "int"}, - "destination": {"key": "destination", "type": "Destination"}, - } - - def __init__( - self, - *, - enabled: Optional[bool] = None, - encoding: Optional[Union[str, "_models.EncodingCaptureDescription"]] = None, - interval_in_seconds: Optional[int] = None, - size_limit_in_bytes: Optional[int] = None, - destination: Optional["_models.Destination"] = None, - **kwargs: Any - ) -> None: - """ - :keyword enabled: A value that indicates whether capture description is enabled. - :paramtype enabled: bool - :keyword encoding: Enumerates the possible values for the encoding format of capture - description. Known values are: "Avro" and "AvroDeflate". - :paramtype encoding: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.EncodingCaptureDescription - :keyword interval_in_seconds: The time window allows you to set the frequency with which the - capture to Azure Blobs will happen, value should between 60 to 900 seconds. - :paramtype interval_in_seconds: int - :keyword size_limit_in_bytes: The size window defines the amount of data built up in your Event - Hub before an capture operation, value should be between 10485760 and 524288000 bytes. - :paramtype size_limit_in_bytes: int - :keyword destination: Properties of Destination where capture will be stored. (Storage Account, - Blob Names). - :paramtype destination: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Destination - """ - super().__init__(**kwargs) - self.enabled = enabled - self.encoding = encoding - self.interval_in_seconds = interval_in_seconds - self.size_limit_in_bytes = size_limit_in_bytes - self.destination = destination - - -class CheckNameAvailability(_serialization.Model): - """Description of a Check Name availability request properties. - - All required parameters must be populated in order to send to server. - - :ivar name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :vartype name: str - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - } - - def __init__(self, *, name: str, **kwargs: Any) -> None: - """ - :keyword name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :paramtype name: str - """ - super().__init__(**kwargs) - self.name = name - - -class CheckNameAvailabilityResult(_serialization.Model): - """Description of a Check Name availability request properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar message: The detailed info regarding the reason associated with the namespace. - :vartype message: str - :ivar name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :vartype name_available: bool - :ivar reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :vartype reason: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.UnavailableReason - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "message": {"key": "message", "type": "str"}, - "name_available": {"key": "nameAvailable", "type": "bool"}, - "reason": {"key": "reason", "type": "str"}, - } - - def __init__( - self, - *, - name_available: Optional[bool] = None, - reason: Optional[Union[str, "_models.UnavailableReason"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :paramtype name_available: bool - :keyword reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :paramtype reason: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.UnavailableReason - """ - super().__init__(**kwargs) - self.message = None - self.name_available = name_available - self.reason = reason - - -class ConnectionState(_serialization.Model): - """ConnectionState information. - - :ivar status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :vartype status: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateLinkConnectionStatus - :ivar description: Description of the connection state. - :vartype description: str - """ - - _attribute_map = { - "status": {"key": "status", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__( - self, - *, - status: Optional[Union[str, "_models.PrivateLinkConnectionStatus"]] = None, - description: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :paramtype status: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateLinkConnectionStatus - :keyword description: Description of the connection state. - :paramtype description: str - """ - super().__init__(**kwargs) - self.status = status - self.description = description - - -class CorrelationFilter(_serialization.Model): - """Represents the correlation filter expression. - - :ivar properties: dictionary object for custom filters. - :vartype properties: dict[str, str] - :ivar correlation_id: Identifier of the correlation. - :vartype correlation_id: str - :ivar message_id: Identifier of the message. - :vartype message_id: str - :ivar to: Address to send to. - :vartype to: str - :ivar reply_to: Address of the queue to reply to. - :vartype reply_to: str - :ivar label: Application specific label. - :vartype label: str - :ivar session_id: Session identifier. - :vartype session_id: str - :ivar reply_to_session_id: Session identifier to reply to. - :vartype reply_to_session_id: str - :ivar content_type: Content type of the message. - :vartype content_type: str - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "properties": {"key": "properties", "type": "{str}"}, - "correlation_id": {"key": "correlationId", "type": "str"}, - "message_id": {"key": "messageId", "type": "str"}, - "to": {"key": "to", "type": "str"}, - "reply_to": {"key": "replyTo", "type": "str"}, - "label": {"key": "label", "type": "str"}, - "session_id": {"key": "sessionId", "type": "str"}, - "reply_to_session_id": {"key": "replyToSessionId", "type": "str"}, - "content_type": {"key": "contentType", "type": "str"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - properties: Optional[Dict[str, str]] = None, - correlation_id: Optional[str] = None, - message_id: Optional[str] = None, - to: Optional[str] = None, - reply_to: Optional[str] = None, - label: Optional[str] = None, - session_id: Optional[str] = None, - reply_to_session_id: Optional[str] = None, - content_type: Optional[str] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword properties: dictionary object for custom filters. - :paramtype properties: dict[str, str] - :keyword correlation_id: Identifier of the correlation. - :paramtype correlation_id: str - :keyword message_id: Identifier of the message. - :paramtype message_id: str - :keyword to: Address to send to. - :paramtype to: str - :keyword reply_to: Address of the queue to reply to. - :paramtype reply_to: str - :keyword label: Application specific label. - :paramtype label: str - :keyword session_id: Session identifier. - :paramtype session_id: str - :keyword reply_to_session_id: Session identifier to reply to. - :paramtype reply_to_session_id: str - :keyword content_type: Content type of the message. - :paramtype content_type: str - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.properties = properties - self.correlation_id = correlation_id - self.message_id = message_id - self.to = to - self.reply_to = reply_to - self.label = label - self.session_id = session_id - self.reply_to_session_id = reply_to_session_id - self.content_type = content_type - self.requires_preprocessing = requires_preprocessing - - -class Destination(_serialization.Model): - """Capture storage details for capture description. - - :ivar name: Name for capture destination. - :vartype name: str - :ivar storage_account_resource_id: Resource id of the storage account to be used to create the - blobs. - :vartype storage_account_resource_id: str - :ivar blob_container: Blob container Name. - :vartype blob_container: str - :ivar archive_name_format: Blob naming convention for archive, e.g. - {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all - the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order. - :vartype archive_name_format: str - """ - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "storage_account_resource_id": {"key": "properties.storageAccountResourceId", "type": "str"}, - "blob_container": {"key": "properties.blobContainer", "type": "str"}, - "archive_name_format": {"key": "properties.archiveNameFormat", "type": "str"}, - } - - def __init__( - self, - *, - name: Optional[str] = None, - storage_account_resource_id: Optional[str] = None, - blob_container: Optional[str] = None, - archive_name_format: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Name for capture destination. - :paramtype name: str - :keyword storage_account_resource_id: Resource id of the storage account to be used to create - the blobs. - :paramtype storage_account_resource_id: str - :keyword blob_container: Blob container Name. - :paramtype blob_container: str - :keyword archive_name_format: Blob naming convention for archive, e.g. - {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all - the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order. - :paramtype archive_name_format: str - """ - super().__init__(**kwargs) - self.name = name - self.storage_account_resource_id = storage_account_resource_id - self.blob_container = blob_container - self.archive_name_format = archive_name_format - - -class Encryption(_serialization.Model): - """Properties to configure Encryption. - - :ivar key_vault_properties: Properties of KeyVault. - :vartype key_vault_properties: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.KeyVaultProperties - :ivar key_source: Enumerates the possible value of keySource for Encryption. Default value is - "Microsoft.KeyVault". - :vartype key_source: str - """ - - _attribute_map = { - "key_vault_properties": {"key": "keyVaultProperties", "type": "KeyVaultProperties"}, - "key_source": {"key": "keySource", "type": "str"}, - } - - def __init__( - self, - *, - key_vault_properties: Optional["_models.KeyVaultProperties"] = None, - key_source: Literal["Microsoft.KeyVault"] = "Microsoft.KeyVault", - **kwargs: Any - ) -> None: - """ - :keyword key_vault_properties: Properties of KeyVault. - :paramtype key_vault_properties: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.KeyVaultProperties - :keyword key_source: Enumerates the possible value of keySource for Encryption. Default value - is "Microsoft.KeyVault". - :paramtype key_source: str - """ - super().__init__(**kwargs) - self.key_vault_properties = key_vault_properties - self.key_source = key_source - - -class ErrorAdditionalInfo(_serialization.Model): - """The resource management error additional info. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar type: The additional info type. - :vartype type: str - :ivar info: The additional info. - :vartype info: JSON - """ - - _validation = { - "type": {"readonly": True}, - "info": {"readonly": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "info": {"key": "info", "type": "object"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.type = None - self.info = None - - -class ErrorResponse(_serialization.Model): - """The resource management error response. - - :ivar error: The error object. - :vartype error: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ErrorResponseError - """ - - _attribute_map = { - "error": {"key": "error", "type": "ErrorResponseError"}, - } - - def __init__(self, *, error: Optional["_models.ErrorResponseError"] = None, **kwargs: Any) -> None: - """ - :keyword error: The error object. - :paramtype error: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ErrorResponseError - """ - super().__init__(**kwargs) - self.error = error - - -class ErrorResponseError(_serialization.Model): - """The error object. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.ErrorResponse] - :ivar additional_info: The error additional info. - :vartype additional_info: - list[~azure.mgmt.servicebus.v2018_01_01_preview.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[ErrorResponse]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code = None - self.message = None - self.target = None - self.details = None - self.additional_info = None - - -class Eventhub(Resource): - """Single item in List or Get Event Hub operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar partition_ids: Current number of shards on the Event Hub. - :vartype partition_ids: list[str] - :ivar created_at: Exact time the Event Hub was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar message_retention_in_days: Number of days to retain the events for this Event Hub, value - should be 1 to 7 days. - :vartype message_retention_in_days: int - :ivar partition_count: Number of partitions created for the Event Hub, allowed values are from - 1 to 32 partitions. - :vartype partition_count: int - :ivar status: Enumerates the possible values for the status of a Event Hub. Known values are: - "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", "Deleting", - "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.EntityStatus - :ivar capture_description: Properties of capture description. - :vartype capture_description: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.CaptureDescription - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "partition_ids": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "message_retention_in_days": {"maximum": 7, "minimum": 1}, - "partition_count": {"maximum": 32, "minimum": 1}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "partition_ids": {"key": "properties.partitionIds", "type": "[str]"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "message_retention_in_days": {"key": "properties.messageRetentionInDays", "type": "int"}, - "partition_count": {"key": "properties.partitionCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "capture_description": {"key": "properties.captureDescription", "type": "CaptureDescription"}, - } - - def __init__( - self, - *, - message_retention_in_days: Optional[int] = None, - partition_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - capture_description: Optional["_models.CaptureDescription"] = None, - **kwargs: Any - ) -> None: - """ - :keyword message_retention_in_days: Number of days to retain the events for this Event Hub, - value should be 1 to 7 days. - :paramtype message_retention_in_days: int - :keyword partition_count: Number of partitions created for the Event Hub, allowed values are - from 1 to 32 partitions. - :paramtype partition_count: int - :keyword status: Enumerates the possible values for the status of a Event Hub. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.EntityStatus - :keyword capture_description: Properties of capture description. - :paramtype capture_description: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.CaptureDescription - """ - super().__init__(**kwargs) - self.partition_ids = None - self.created_at = None - self.updated_at = None - self.message_retention_in_days = message_retention_in_days - self.partition_count = partition_count - self.status = status - self.capture_description = capture_description - - -class EventHubListResult(_serialization.Model): - """The result of the List EventHubs operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Result of the List EventHubs operation. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.Eventhub] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of EventHubs. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Eventhub]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.Eventhub"]] = None, **kwargs: Any) -> None: - """ - :keyword value: Result of the List EventHubs operation. - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.Eventhub] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class FailoverProperties(_serialization.Model): - """Safe failover is to indicate the service should wait for pending replication to finish before - switching to the secondary. - - :ivar is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :vartype is_safe_failover: bool - """ - - _attribute_map = { - "is_safe_failover": {"key": "properties.IsSafeFailover", "type": "bool"}, - } - - def __init__(self, *, is_safe_failover: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :paramtype is_safe_failover: bool - """ - super().__init__(**kwargs) - self.is_safe_failover = is_safe_failover - - -class Identity(_serialization.Model): - """Properties to configure Identity for Bring your Own Keys. - - :ivar principal_id: ObjectId from the KeyVault. - :vartype principal_id: str - :ivar tenant_id: TenantId from the KeyVault. - :vartype tenant_id: str - :ivar type: Enumerates the possible value Identity type, which currently supports only - 'SystemAssigned'. Default value is "SystemAssigned". - :vartype type: str - """ - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "tenant_id": {"key": "tenantId", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__( - self, - *, - principal_id: Optional[str] = None, - tenant_id: Optional[str] = None, - type: Literal["SystemAssigned"] = "SystemAssigned", - **kwargs: Any - ) -> None: - """ - :keyword principal_id: ObjectId from the KeyVault. - :paramtype principal_id: str - :keyword tenant_id: TenantId from the KeyVault. - :paramtype tenant_id: str - :keyword type: Enumerates the possible value Identity type, which currently supports only - 'SystemAssigned'. Default value is "SystemAssigned". - :paramtype type: str - """ - super().__init__(**kwargs) - self.principal_id = principal_id - self.tenant_id = tenant_id - self.type = type - - -class IpFilterRule(Resource): - """Single item in a List or Get IpFilterRules operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar ip_mask: IP Mask. - :vartype ip_mask: str - :ivar action: The IP Filter Action. Known values are: "Accept" and "Reject". - :vartype action: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.IPAction - :ivar filter_name: IP Filter name. - :vartype filter_name: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "ip_mask": {"key": "properties.ipMask", "type": "str"}, - "action": {"key": "properties.action", "type": "str"}, - "filter_name": {"key": "properties.filterName", "type": "str"}, - } - - def __init__( - self, - *, - ip_mask: Optional[str] = None, - action: Optional[Union[str, "_models.IPAction"]] = None, - filter_name: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword ip_mask: IP Mask. - :paramtype ip_mask: str - :keyword action: The IP Filter Action. Known values are: "Accept" and "Reject". - :paramtype action: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.IPAction - :keyword filter_name: IP Filter name. - :paramtype filter_name: str - """ - super().__init__(**kwargs) - self.ip_mask = ip_mask - self.action = action - self.filter_name = filter_name - - -class IpFilterRuleListResult(_serialization.Model): - """The response from the List namespace operation. - - :ivar value: Result of the List IpFilter Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule] - :ivar next_link: Link to the next set of results. Not empty if Value contains an incomplete - list of IpFilter Rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[IpFilterRule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.IpFilterRule"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List IpFilter Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule] - :keyword next_link: Link to the next set of results. Not empty if Value contains an incomplete - list of IpFilter Rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class KeyVaultProperties(_serialization.Model): - """Properties to configure keyVault Properties. - - :ivar key_name: Name of the Key from KeyVault. - :vartype key_name: str - :ivar key_vault_uri: Uri of KeyVault. - :vartype key_vault_uri: str - """ - - _attribute_map = { - "key_name": {"key": "keyName", "type": "str"}, - "key_vault_uri": {"key": "keyVaultUri", "type": "str"}, - } - - def __init__(self, *, key_name: Optional[str] = None, key_vault_uri: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword key_name: Name of the Key from KeyVault. - :paramtype key_name: str - :keyword key_vault_uri: Uri of KeyVault. - :paramtype key_vault_uri: str - """ - super().__init__(**kwargs) - self.key_name = key_name - self.key_vault_uri = key_vault_uri - - -class MessageCountDetails(_serialization.Model): - """Message Count Details. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar active_message_count: Number of active messages in the queue, topic, or subscription. - :vartype active_message_count: int - :ivar dead_letter_message_count: Number of messages that are dead lettered. - :vartype dead_letter_message_count: int - :ivar scheduled_message_count: Number of scheduled messages. - :vartype scheduled_message_count: int - :ivar transfer_message_count: Number of messages transferred to another queue, topic, or - subscription. - :vartype transfer_message_count: int - :ivar transfer_dead_letter_message_count: Number of messages transferred into dead letters. - :vartype transfer_dead_letter_message_count: int - """ - - _validation = { - "active_message_count": {"readonly": True}, - "dead_letter_message_count": {"readonly": True}, - "scheduled_message_count": {"readonly": True}, - "transfer_message_count": {"readonly": True}, - "transfer_dead_letter_message_count": {"readonly": True}, - } - - _attribute_map = { - "active_message_count": {"key": "activeMessageCount", "type": "int"}, - "dead_letter_message_count": {"key": "deadLetterMessageCount", "type": "int"}, - "scheduled_message_count": {"key": "scheduledMessageCount", "type": "int"}, - "transfer_message_count": {"key": "transferMessageCount", "type": "int"}, - "transfer_dead_letter_message_count": {"key": "transferDeadLetterMessageCount", "type": "int"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.active_message_count = None - self.dead_letter_message_count = None - self.scheduled_message_count = None - self.transfer_message_count = None - self.transfer_dead_letter_message_count = None - - -class MigrationConfigListResult(_serialization.Model): - """The result of the List migrationConfigurations operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Migration Configs. - :vartype value: - list[~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of migrationConfigurations. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[MigrationConfigProperties]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.MigrationConfigProperties"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Migration Configs. - :paramtype value: - list[~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class MigrationConfigProperties(Resource): - """Single item in List or Get Migration Config operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar provisioning_state: Provisioning state of Migration Configuration. - :vartype provisioning_state: str - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar target_namespace: Existing premium Namespace ARM Id name which has no entities, will be - used for migration. - :vartype target_namespace: str - :ivar post_migration_name: Name to access Standard Namespace after migration. - :vartype post_migration_name: str - :ivar migration_state: State in which Standard to Premium Migration is, possible values : - Unknown, Reverting, Completing, Initiating, Syncing, Active. - :vartype migration_state: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "migration_state": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "target_namespace": {"key": "properties.targetNamespace", "type": "str"}, - "post_migration_name": {"key": "properties.postMigrationName", "type": "str"}, - "migration_state": {"key": "properties.migrationState", "type": "str"}, - } - - def __init__( - self, *, target_namespace: Optional[str] = None, post_migration_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword target_namespace: Existing premium Namespace ARM Id name which has no entities, will - be used for migration. - :paramtype target_namespace: str - :keyword post_migration_name: Name to access Standard Namespace after migration. - :paramtype post_migration_name: str - """ - super().__init__(**kwargs) - self.provisioning_state = None - self.pending_replication_operations_count = None - self.target_namespace = target_namespace - self.post_migration_name = post_migration_name - self.migration_state = None - - -class NetworkRuleSet(Resource): - """Description of NetworkRuleSet resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :vartype default_action: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.DefaultAction - :ivar virtual_network_rules: List VirtualNetwork Rules. - :vartype virtual_network_rules: - list[~azure.mgmt.servicebus.v2018_01_01_preview.models.NWRuleSetVirtualNetworkRules] - :ivar ip_rules: List of IpRules. - :vartype ip_rules: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.NWRuleSetIpRules] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "default_action": {"key": "properties.defaultAction", "type": "str"}, - "virtual_network_rules": {"key": "properties.virtualNetworkRules", "type": "[NWRuleSetVirtualNetworkRules]"}, - "ip_rules": {"key": "properties.ipRules", "type": "[NWRuleSetIpRules]"}, - } - - def __init__( - self, - *, - default_action: Optional[Union[str, "_models.DefaultAction"]] = None, - virtual_network_rules: Optional[List["_models.NWRuleSetVirtualNetworkRules"]] = None, - ip_rules: Optional[List["_models.NWRuleSetIpRules"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :paramtype default_action: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.DefaultAction - :keyword virtual_network_rules: List VirtualNetwork Rules. - :paramtype virtual_network_rules: - list[~azure.mgmt.servicebus.v2018_01_01_preview.models.NWRuleSetVirtualNetworkRules] - :keyword ip_rules: List of IpRules. - :paramtype ip_rules: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.NWRuleSetIpRules] - """ - super().__init__(**kwargs) - self.default_action = default_action - self.virtual_network_rules = virtual_network_rules - self.ip_rules = ip_rules - - -class NetworkRuleSetListResult(_serialization.Model): - """The response of the List NetworkRuleSet operation. - - :ivar value: Result of the List NetworkRuleSet operation. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of NetworkRuleSet. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[NetworkRuleSet]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.NetworkRuleSet"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List NetworkRuleSet operation. - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of NetworkRuleSet. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class NWRuleSetIpRules(_serialization.Model): - """Description of NetWorkRuleSet - IpRules resource. - - :ivar ip_mask: IP Mask. - :vartype ip_mask: str - :ivar action: The IP Filter Action. "Allow" - :vartype action: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleIPAction - """ - - _attribute_map = { - "ip_mask": {"key": "ipMask", "type": "str"}, - "action": {"key": "action", "type": "str"}, - } - - def __init__( - self, - *, - ip_mask: Optional[str] = None, - action: Union[str, "_models.NetworkRuleIPAction"] = "Allow", - **kwargs: Any - ) -> None: - """ - :keyword ip_mask: IP Mask. - :paramtype ip_mask: str - :keyword action: The IP Filter Action. "Allow" - :paramtype action: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleIPAction - """ - super().__init__(**kwargs) - self.ip_mask = ip_mask - self.action = action - - -class NWRuleSetVirtualNetworkRules(_serialization.Model): - """Description of VirtualNetworkRules - NetworkRules resource. - - :ivar subnet: Subnet properties. - :vartype subnet: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Subnet - :ivar ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing VNet - Service Endpoint. - :vartype ignore_missing_vnet_service_endpoint: bool - """ - - _attribute_map = { - "subnet": {"key": "subnet", "type": "Subnet"}, - "ignore_missing_vnet_service_endpoint": {"key": "ignoreMissingVnetServiceEndpoint", "type": "bool"}, - } - - def __init__( - self, - *, - subnet: Optional["_models.Subnet"] = None, - ignore_missing_vnet_service_endpoint: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword subnet: Subnet properties. - :paramtype subnet: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Subnet - :keyword ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing - VNet Service Endpoint. - :paramtype ignore_missing_vnet_service_endpoint: bool - """ - super().__init__(**kwargs) - self.subnet = subnet - self.ignore_missing_vnet_service_endpoint = ignore_missing_vnet_service_endpoint - - -class Operation(_serialization.Model): - """A ServiceBus REST API operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar name: Operation name: {provider}/{resource}/{operation}. - :vartype name: str - :ivar display: The object that represents the operation. - :vartype display: ~azure.mgmt.servicebus.v2018_01_01_preview.models.OperationDisplay - """ - - _validation = { - "name": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "display": {"key": "display", "type": "OperationDisplay"}, - } - - def __init__(self, *, display: Optional["_models.OperationDisplay"] = None, **kwargs: Any) -> None: - """ - :keyword display: The object that represents the operation. - :paramtype display: ~azure.mgmt.servicebus.v2018_01_01_preview.models.OperationDisplay - """ - super().__init__(**kwargs) - self.name = None - self.display = display - - -class OperationDisplay(_serialization.Model): - """The object that represents the operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provider: Service provider: Microsoft.ServiceBus. - :vartype provider: str - :ivar resource: Resource on which the operation is performed: Invoice, etc. - :vartype resource: str - :ivar operation: Operation type: Read, write, delete, etc. - :vartype operation: str - """ - - _validation = { - "provider": {"readonly": True}, - "resource": {"readonly": True}, - "operation": {"readonly": True}, - } - - _attribute_map = { - "provider": {"key": "provider", "type": "str"}, - "resource": {"key": "resource", "type": "str"}, - "operation": {"key": "operation", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.provider = None - self.resource = None - self.operation = None - - -class OperationListResult(_serialization.Model): - """Result of the request to list ServiceBus operations. It contains a list of operations and a URL - link to get the next set of results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of ServiceBus operations supported by the Microsoft.ServiceBus resource - provider. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.Operation] - :ivar next_link: URL to get the next set of operation list results if there are any. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Operation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value = None - self.next_link = None - - -class ResourceNamespacePatch(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: Optional[str] = None, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class PremiumMessagingRegions(ResourceNamespacePatch): - """Premium Messaging Region. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar properties: - :vartype properties: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.PremiumMessagingRegionsProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "properties": {"key": "properties", "type": "PremiumMessagingRegionsProperties"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - tags: Optional[Dict[str, str]] = None, - properties: Optional["_models.PremiumMessagingRegionsProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword properties: - :paramtype properties: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.PremiumMessagingRegionsProperties - """ - super().__init__(location=location, tags=tags, **kwargs) - self.properties = properties - - -class PremiumMessagingRegionsListResult(_serialization.Model): - """The response of the List PremiumMessagingRegions operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: Result of the List PremiumMessagingRegions type. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.PremiumMessagingRegions] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of PremiumMessagingRegions. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[PremiumMessagingRegions]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.PremiumMessagingRegions"]] = None, **kwargs: Any) -> None: - """ - :keyword value: Result of the List PremiumMessagingRegions type. - :paramtype value: - list[~azure.mgmt.servicebus.v2018_01_01_preview.models.PremiumMessagingRegions] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class PremiumMessagingRegionsProperties(_serialization.Model): - """PremiumMessagingRegionsProperties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: Region code. - :vartype code: str - :ivar full_name: Full name of the region. - :vartype full_name: str - """ - - _validation = { - "code": {"readonly": True}, - "full_name": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "full_name": {"key": "fullName", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code = None - self.full_name = None - - -class PrivateEndpoint(_serialization.Model): - """PrivateEndpoint information. - - :ivar id: The ARM identifier for Private Endpoint. - :vartype id: str - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: The ARM identifier for Private Endpoint. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class PrivateEndpointConnection(Resource): - """Properties of the PrivateEndpointConnection. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar private_endpoint: The Private Endpoint resource for this Connection. - :vartype private_endpoint: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpoint - :ivar private_link_service_connection_state: Details about the state of the connection. - :vartype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.ConnectionState - :ivar provisioning_state: Provisioning state of the Private Endpoint Connection. Known values - are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.EndPointProvisioningState - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "private_endpoint": {"key": "properties.privateEndpoint", "type": "PrivateEndpoint"}, - "private_link_service_connection_state": { - "key": "properties.privateLinkServiceConnectionState", - "type": "ConnectionState", - }, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - } - - def __init__( - self, - *, - private_endpoint: Optional["_models.PrivateEndpoint"] = None, - private_link_service_connection_state: Optional["_models.ConnectionState"] = None, - provisioning_state: Optional[Union[str, "_models.EndPointProvisioningState"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword private_endpoint: The Private Endpoint resource for this Connection. - :paramtype private_endpoint: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpoint - :keyword private_link_service_connection_state: Details about the state of the connection. - :paramtype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.ConnectionState - :keyword provisioning_state: Provisioning state of the Private Endpoint Connection. Known - values are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :paramtype provisioning_state: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.EndPointProvisioningState - """ - super().__init__(**kwargs) - self.private_endpoint = private_endpoint - self.private_link_service_connection_state = private_link_service_connection_state - self.provisioning_state = provisioning_state - - -class PrivateEndpointConnectionListResult(_serialization.Model): - """Result of the list of all private endpoint connections operation. - - :ivar value: A collection of private endpoint connection resources. - :vartype value: - list[~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection] - :ivar next_link: A link for the next page of private endpoint connection resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateEndpointConnection]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateEndpointConnection"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private endpoint connection resources. - :paramtype value: - list[~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection] - :keyword next_link: A link for the next page of private endpoint connection resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class PrivateLinkResource(_serialization.Model): - """Information of the private link resource. - - :ivar id: Fully qualified identifier of the resource. - :vartype id: str - :ivar name: Name of the resource. - :vartype name: str - :ivar type: Type of the resource. - :vartype type: str - :ivar group_id: - :vartype group_id: str - :ivar required_members: Required Members. - :vartype required_members: list[str] - :ivar required_zone_names: Required Zone Names. - :vartype required_zone_names: list[str] - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "group_id": {"key": "properties.groupId", "type": "str"}, - "required_members": {"key": "properties.requiredMembers", "type": "[str]"}, - "required_zone_names": {"key": "properties.requiredZoneNames", "type": "[str]"}, - } - - def __init__( - self, - *, - id: Optional[str] = None, # pylint: disable=redefined-builtin - name: Optional[str] = None, - type: Optional[str] = None, - group_id: Optional[str] = None, - required_members: Optional[List[str]] = None, - required_zone_names: Optional[List[str]] = None, - **kwargs: Any - ) -> None: - """ - :keyword id: Fully qualified identifier of the resource. - :paramtype id: str - :keyword name: Name of the resource. - :paramtype name: str - :keyword type: Type of the resource. - :paramtype type: str - :keyword group_id: - :paramtype group_id: str - :keyword required_members: Required Members. - :paramtype required_members: list[str] - :keyword required_zone_names: Required Zone Names. - :paramtype required_zone_names: list[str] - """ - super().__init__(**kwargs) - self.id = id - self.name = name - self.type = type - self.group_id = group_id - self.required_members = required_members - self.required_zone_names = required_zone_names - - -class PrivateLinkResourcesListResult(_serialization.Model): - """Result of the List private link resources operation. - - :ivar value: A collection of private link resources. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateLinkResource] - :ivar next_link: A link for the next page of private link resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateLinkResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateLinkResource"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private link resources. - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateLinkResource] - :keyword next_link: A link for the next page of private link resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class RegenerateAccessKeyParameters(_serialization.Model): - """Parameters supplied to the Regenerate Authorization Rule operation, specifies which key needs - to be reset. - - All required parameters must be populated in order to send to server. - - :ivar key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :vartype key_type: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.KeyType - :ivar key: Optional, if the key value provided, is reset for KeyType value or autogenerate Key - value set for keyType. - :vartype key: str - """ - - _validation = { - "key_type": {"required": True}, - } - - _attribute_map = { - "key_type": {"key": "keyType", "type": "str"}, - "key": {"key": "key", "type": "str"}, - } - - def __init__(self, *, key_type: Union[str, "_models.KeyType"], key: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :paramtype key_type: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.KeyType - :keyword key: Optional, if the key value provided, is reset for KeyType value or autogenerate - Key value set for keyType. - :paramtype key: str - """ - super().__init__(**kwargs) - self.key_type = key_type - self.key = key - - -class Rule(Resource): - """Description of Rule Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :vartype action: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Action - :ivar filter_type: Filter type that is evaluated against a BrokeredMessage. Known values are: - "SqlFilter" and "CorrelationFilter". - :vartype filter_type: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.FilterType - :ivar sql_filter: Properties of sqlFilter. - :vartype sql_filter: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SqlFilter - :ivar correlation_filter: Properties of correlationFilter. - :vartype correlation_filter: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.CorrelationFilter - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "action": {"key": "properties.action", "type": "Action"}, - "filter_type": {"key": "properties.filterType", "type": "str"}, - "sql_filter": {"key": "properties.sqlFilter", "type": "SqlFilter"}, - "correlation_filter": {"key": "properties.correlationFilter", "type": "CorrelationFilter"}, - } - - def __init__( - self, - *, - action: Optional["_models.Action"] = None, - filter_type: Optional[Union[str, "_models.FilterType"]] = None, - sql_filter: Optional["_models.SqlFilter"] = None, - correlation_filter: Optional["_models.CorrelationFilter"] = None, - **kwargs: Any - ) -> None: - """ - :keyword action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :paramtype action: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Action - :keyword filter_type: Filter type that is evaluated against a BrokeredMessage. Known values - are: "SqlFilter" and "CorrelationFilter". - :paramtype filter_type: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.FilterType - :keyword sql_filter: Properties of sqlFilter. - :paramtype sql_filter: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SqlFilter - :keyword correlation_filter: Properties of correlationFilter. - :paramtype correlation_filter: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.CorrelationFilter - """ - super().__init__(**kwargs) - self.action = action - self.filter_type = filter_type - self.sql_filter = sql_filter - self.correlation_filter = correlation_filter - - -class RuleListResult(_serialization.Model): - """The response of the List rule operation. - - :ivar value: Result of the List Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[Rule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.Rule"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBAuthorizationRule(Resource): - """Description of a namespace authorization rule. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar rights: The rights associated with the rule. - :vartype rights: list[str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessRights] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "rights": {"key": "properties.rights", "type": "[str]"}, - } - - def __init__(self, *, rights: Optional[List[Union[str, "_models.AccessRights"]]] = None, **kwargs: Any) -> None: - """ - :keyword rights: The rights associated with the rule. - :paramtype rights: list[str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessRights] - """ - super().__init__(**kwargs) - self.rights = rights - - -class SBAuthorizationRuleListResult(_serialization.Model): - """The response to the List Namespace operation. - - :ivar value: Result of the List Authorization Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Authorization Rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBAuthorizationRule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.SBAuthorizationRule"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Authorization Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Authorization Rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class TrackedResource(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class SBNamespace(TrackedResource): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Identity - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar zone_redundant: Enabling this property creates a Premium Service Bus Namespace in regions - supported availability zones. - :vartype zone_redundant: bool - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Encryption - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "zone_redundant": {"key": "properties.zoneRedundant", "type": "bool"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - } - - def __init__( - self, - *, - location: str, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - zone_redundant: Optional[bool] = None, - encryption: Optional["_models.Encryption"] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Identity - :keyword zone_redundant: Enabling this property creates a Premium Service Bus Namespace in - regions supported availability zones. - :paramtype zone_redundant: bool - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Encryption - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.zone_redundant = zone_redundant - self.encryption = encryption - - -class SBNamespaceListResult(_serialization.Model): - """The response of the List Namespace operation. - - :ivar value: Result of the List Namespace operation. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Namespaces. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBNamespace]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBNamespace"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Namespace operation. - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Namespaces. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBNamespaceMigrate(_serialization.Model): - """Namespace Migrate Object. - - All required parameters must be populated in order to send to server. - - :ivar target_namespace_type: Type of namespaces. Required. Known values are: "Messaging", - "NotificationHub", "Mixed", "EventHub", and "Relay". - :vartype target_namespace_type: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.NameSpaceType - """ - - _validation = { - "target_namespace_type": {"required": True}, - } - - _attribute_map = { - "target_namespace_type": {"key": "targetNamespaceType", "type": "str"}, - } - - def __init__(self, *, target_namespace_type: Union[str, "_models.NameSpaceType"], **kwargs: Any) -> None: - """ - :keyword target_namespace_type: Type of namespaces. Required. Known values are: "Messaging", - "NotificationHub", "Mixed", "EventHub", and "Relay". - :paramtype target_namespace_type: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.NameSpaceType - """ - super().__init__(**kwargs) - self.target_namespace_type = target_namespace_type - - -class SBNamespaceUpdateParameters(ResourceNamespacePatch): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Identity - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar zone_redundant: Enabling this property creates a Premium Service Bus Namespace in regions - supported availability zones. - :vartype zone_redundant: bool - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Encryption - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "zone_redundant": {"key": "properties.zoneRedundant", "type": "bool"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - zone_redundant: Optional[bool] = None, - encryption: Optional["_models.Encryption"] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Identity - :keyword zone_redundant: Enabling this property creates a Premium Service Bus Namespace in - regions supported availability zones. - :paramtype zone_redundant: bool - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Encryption - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.zone_redundant = zone_redundant - self.encryption = encryption - - -class SBQueue(Resource): # pylint: disable=too-many-instance-attributes - """Description of queue Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2018_01_01_preview.models.MessageCountDetails - :ivar created_at: The exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time a message was sent, or the last time there was a receive request - to this queue. - :vartype accessed_at: ~datetime.datetime - :ivar size_in_bytes: The size of the queue, in bytes. - :vartype size_in_bytes: int - :ivar message_count: The number of messages in the queue. - :vartype message_count: int - :ivar lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size of - memory allocated for the queue. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar requires_session: A value that indicates whether the queue supports the concept of - sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_message_expiration: A value that indicates whether this queue has dead - letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: The maximum delivery count. A message is automatically deadlettered - after this number of deliveries. default value is 10. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: A value that indicates whether the queue is to be partitioned across - multiple message brokers. - :vartype enable_partitioning: bool - :ivar enable_express: A value that indicates whether Express Entities are enabled. An express - queue holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "count_details": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "message_count": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size - of memory allocated for the queue. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword requires_session: A value that indicates whether the queue supports the concept of - sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_message_expiration: A value that indicates whether this queue has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: The maximum delivery count. A message is automatically - deadlettered after this number of deliveries. default value is 10. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: A value that indicates whether the queue is to be partitioned - across multiple message brokers. - :paramtype enable_partitioning: bool - :keyword enable_express: A value that indicates whether Express Entities are enabled. An - express queue holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - """ - super().__init__(**kwargs) - self.count_details = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.size_in_bytes = None - self.message_count = None - self.lock_duration = lock_duration - self.max_size_in_megabytes = max_size_in_megabytes - self.requires_duplicate_detection = requires_duplicate_detection - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - - -class SBQueueListResult(_serialization.Model): - """The response to the List Queues operation. - - :ivar value: Result of the List Queues operation. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of queues. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBQueue]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBQueue"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Queues operation. - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of queues. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBSku(_serialization.Model): - """SKU of the namespace. - - All required parameters must be populated in order to send to server. - - :ivar name: Name of this SKU. Required. Known values are: "Basic", "Standard", and "Premium". - :vartype name: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.SkuName - :ivar tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", and - "Premium". - :vartype tier: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.SkuTier - :ivar capacity: The specified messaging units for the tier. For Premium tier, capacity are 1,2 - and 4. - :vartype capacity: int - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "tier": {"key": "tier", "type": "str"}, - "capacity": {"key": "capacity", "type": "int"}, - } - - def __init__( - self, - *, - name: Union[str, "_models.SkuName"], - tier: Optional[Union[str, "_models.SkuTier"]] = None, - capacity: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Name of this SKU. Required. Known values are: "Basic", "Standard", and - "Premium". - :paramtype name: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.SkuName - :keyword tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", - and "Premium". - :paramtype tier: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.SkuTier - :keyword capacity: The specified messaging units for the tier. For Premium tier, capacity are - 1,2 and 4. - :paramtype capacity: int - """ - super().__init__(**kwargs) - self.name = name - self.tier = tier - self.capacity = capacity - - -class SBSubscription(Resource): # pylint: disable=too-many-instance-attributes - """Description of subscription resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar message_count: Number of messages. - :vartype message_count: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar accessed_at: Last time there was a receive request to this subscription. - :vartype accessed_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2018_01_01_preview.models.MessageCountDetails - :ivar lock_duration: ISO 8061 lock duration timespan for the subscription. The default value is - 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar requires_session: Value indicating if a subscription supports the concept of sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :vartype dead_lettering_on_filter_evaluation_exceptions: bool - :ivar dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: Number of maximum deliveries. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "message_count": {"readonly": True}, - "created_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_filter_evaluation_exceptions": { - "key": "properties.deadLetteringOnFilterEvaluationExceptions", - "type": "bool", - }, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - } - - def __init__( - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_filter_evaluation_exceptions: Optional[bool] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8061 lock duration timespan for the subscription. The default value - is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword requires_session: Value indicating if a subscription supports the concept of sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :paramtype dead_lettering_on_filter_evaluation_exceptions: bool - :keyword dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: Number of maximum deliveries. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - """ - super().__init__(**kwargs) - self.message_count = None - self.created_at = None - self.accessed_at = None - self.updated_at = None - self.count_details = None - self.lock_duration = lock_duration - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_filter_evaluation_exceptions = dead_lettering_on_filter_evaluation_exceptions - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - - -class SBSubscriptionListResult(_serialization.Model): - """The response to the List Subscriptions operation. - - :ivar value: Result of the List Subscriptions operation. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of subscriptions. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBSubscription]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBSubscription"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Subscriptions operation. - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of subscriptions. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBTopic(Resource): # pylint: disable=too-many-instance-attributes - """Description of topic resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar size_in_bytes: Size of the topic, in bytes. - :vartype size_in_bytes: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time the message was sent, or a request was received, for this topic. - :vartype accessed_at: ~datetime.datetime - :ivar subscription_count: Number of subscriptions. - :vartype subscription_count: int - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2018_01_01_preview.models.MessageCountDetails - :ivar default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of the - memory allocated for the topic. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.EntityStatus - :ivar support_ordering: Value that indicates whether the topic supports ordering. - :vartype support_ordering: bool - :ivar auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :vartype enable_partitioning: bool - :ivar enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "subscription_count": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "subscription_count": {"key": "properties.subscriptionCount", "type": "int"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "status": {"key": "properties.status", "type": "str"}, - "support_ordering": {"key": "properties.supportOrdering", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - } - - def __init__( - self, - *, - default_message_time_to_live: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - enable_batched_operations: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - support_ordering: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of - the memory allocated for the topic. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2018_01_01_preview.models.EntityStatus - :keyword support_ordering: Value that indicates whether the topic supports ordering. - :paramtype support_ordering: bool - :keyword auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :paramtype enable_partitioning: bool - :keyword enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - """ - super().__init__(**kwargs) - self.size_in_bytes = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.subscription_count = None - self.count_details = None - self.default_message_time_to_live = default_message_time_to_live - self.max_size_in_megabytes = max_size_in_megabytes - self.requires_duplicate_detection = requires_duplicate_detection - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.enable_batched_operations = enable_batched_operations - self.status = status - self.support_ordering = support_ordering - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - - -class SBTopicListResult(_serialization.Model): - """The response to the List Topics operation. - - :ivar value: Result of the List Topics operation. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of topics. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBTopic]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBTopic"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Topics operation. - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of topics. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SqlFilter(_serialization.Model): - """Represents a filter which is a composition of an expression and an action that is executed in - the pub/sub pipeline. - - :ivar sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _validation = { - "compatibility_level": {"maximum": 20, "minimum": 20}, - } - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: int = 20, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class SqlRuleAction(Action): - """Represents set of actions written in SQL language-based syntax that is performed against a - ServiceBus.Messaging.BrokeredMessage. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - -class Subnet(_serialization.Model): - """Properties supplied for Subnet. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource ID of Virtual Network Subnet. Required. - :vartype id: str - """ - - _validation = { - "id": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: str, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: Resource ID of Virtual Network Subnet. Required. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class VirtualNetworkRule(Resource): - """Single item in a List or Get VirtualNetworkRules operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar virtual_network_subnet_id: Resource ID of Virtual Network Subnet. - :vartype virtual_network_subnet_id: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "virtual_network_subnet_id": {"key": "properties.virtualNetworkSubnetId", "type": "str"}, - } - - def __init__(self, *, virtual_network_subnet_id: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword virtual_network_subnet_id: Resource ID of Virtual Network Subnet. - :paramtype virtual_network_subnet_id: str - """ - super().__init__(**kwargs) - self.virtual_network_subnet_id = virtual_network_subnet_id - - -class VirtualNetworkRuleListResult(_serialization.Model): - """The response from the List namespace operation. - - :ivar value: Result of the List VirtualNetwork Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule] - :ivar next_link: Link to the next set of results. Not empty if Value contains an incomplete - list of VirtualNetwork Rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[VirtualNetworkRule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.VirtualNetworkRule"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List VirtualNetwork Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule] - :keyword next_link: Link to the next set of results. Not empty if Value contains an incomplete - list of VirtualNetwork Rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_service_bus_management_client_enums.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_service_bus_management_client_enums.py deleted file mode 100644 index af42f8afb68f..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/models/_service_bus_management_client_enums.py +++ /dev/null @@ -1,156 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from enum import Enum -from azure.core import CaseInsensitiveEnumMeta - - -class AccessRights(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """AccessRights.""" - - MANAGE = "Manage" - SEND = "Send" - LISTEN = "Listen" - - -class DefaultAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Default Action for Network Rule Set.""" - - ALLOW = "Allow" - DENY = "Deny" - - -class EncodingCaptureDescription(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Enumerates the possible values for the encoding format of capture description.""" - - AVRO = "Avro" - AVRO_DEFLATE = "AvroDeflate" - - -class EndPointProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Private Endpoint Connection.""" - - CREATING = "Creating" - UPDATING = "Updating" - DELETING = "Deleting" - SUCCEEDED = "Succeeded" - CANCELED = "Canceled" - FAILED = "Failed" - - -class EntityStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Entity status.""" - - ACTIVE = "Active" - DISABLED = "Disabled" - RESTORING = "Restoring" - SEND_DISABLED = "SendDisabled" - RECEIVE_DISABLED = "ReceiveDisabled" - CREATING = "Creating" - DELETING = "Deleting" - RENAMING = "Renaming" - UNKNOWN = "Unknown" - - -class FilterType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Rule filter types.""" - - SQL_FILTER = "SqlFilter" - CORRELATION_FILTER = "CorrelationFilter" - - -class IPAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The IP Filter Action.""" - - ACCEPT = "Accept" - REJECT = "Reject" - - -class KeyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The access key to regenerate.""" - - PRIMARY_KEY = "PrimaryKey" - SECONDARY_KEY = "SecondaryKey" - - -class MigrationConfigurationName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """MigrationConfigurationName.""" - - _DEFAULT = "$default" - - -class NameSpaceType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Type of namespaces.""" - - MESSAGING = "Messaging" - NOTIFICATION_HUB = "NotificationHub" - MIXED = "Mixed" - EVENT_HUB = "EventHub" - RELAY = "Relay" - - -class NetworkRuleIPAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The IP Filter Action.""" - - ALLOW = "Allow" - - -class PrivateLinkConnectionStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Status of the connection.""" - - PENDING = "Pending" - APPROVED = "Approved" - REJECTED = "Rejected" - DISCONNECTED = "Disconnected" - - -class ProvisioningStateDR(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Alias(Disaster Recovery configuration) - possible values 'Accepted' - or 'Succeeded' or 'Failed'. - """ - - ACCEPTED = "Accepted" - SUCCEEDED = "Succeeded" - FAILED = "Failed" - - -class RoleDisasterRecovery(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' or - 'Secondary'. - """ - - PRIMARY = "Primary" - PRIMARY_NOT_REPLICATING = "PrimaryNotReplicating" - SECONDARY = "Secondary" - - -class SkuName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Name of this SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class SkuTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The billing tier of this particular SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class UnavailableReason(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Specifies the reason for the unavailability of the service.""" - - NONE = "None" - INVALID_NAME = "InvalidName" - SUBSCRIPTION_IS_DISABLED = "SubscriptionIsDisabled" - NAME_IN_USE = "NameInUse" - NAME_IN_LOCKDOWN = "NameInLockdown" - TOO_MANY_NAMESPACE_IN_CURRENT_SUBSCRIPTION = "TooManyNamespaceInCurrentSubscription" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/__init__.py deleted file mode 100644 index 7209ae076025..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/__init__.py +++ /dev/null @@ -1,43 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._event_hubs_operations import EventHubsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._premium_messaging_regions_operations import PremiumMessagingRegionsOperations -from ._regions_operations import RegionsOperations -from ._subscriptions_operations import SubscriptionsOperations -from ._rules_operations import RulesOperations -from ._operations import Operations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "DisasterRecoveryConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "EventHubsOperations", - "MigrationConfigsOperations", - "PremiumMessagingRegionsOperations", - "RegionsOperations", - "SubscriptionsOperations", - "RulesOperations", - "Operations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index 8a3116ba1b8b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,1335 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_check_name_availability_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/CheckNameAvailability", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_break_pairing_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/breakPairing", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_fail_over_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/failover", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery or - IO[bytes] - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.ArmDisasterRecovery]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - if response.status_code == 200: - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.FailoverProperties or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_event_hubs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_event_hubs_operations.py deleted file mode 100644 index 99d3cd22a1e1..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_event_hubs_operations.py +++ /dev/null @@ -1,179 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_namespace_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/eventhubs", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class EventHubsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`event_hubs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_namespace( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.Eventhub"]: - """Gets all the Event Hubs in a service bus Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either Eventhub or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.Eventhub] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.EventHubListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("EventHubListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_migration_configs_operations.py deleted file mode 100644 index adf823c9fe92..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_migration_configs_operations.py +++ /dev/null @@ -1,852 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_and_start_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_complete_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/upgrade", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_revert_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/revert", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties - or IO[bytes] - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2018_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_namespaces_operations.py deleted file mode 100644 index cfbdacd90c60..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_namespaces_operations.py +++ /dev/null @@ -1,3380 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_ip_filter_rules_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/ipfilterrules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_ip_filter_rule_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, ip_filter_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/ipfilterrules/{ipFilterRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "ipFilterRuleName": _SERIALIZER.url("ip_filter_rule_name", ip_filter_rule_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_ip_filter_rule_request( - resource_group_name: str, namespace_name: str, ip_filter_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/ipfilterrules/{ipFilterRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "ipFilterRuleName": _SERIALIZER.url("ip_filter_rule_name", ip_filter_rule_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_ip_filter_rule_request( - resource_group_name: str, namespace_name: str, ip_filter_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/ipfilterrules/{ipFilterRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "ipFilterRuleName": _SERIALIZER.url("ip_filter_rule_name", ip_filter_rule_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/namespaces") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_virtual_network_rules_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/virtualnetworkrules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_virtual_network_rule_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, virtual_network_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/virtualnetworkrules/{virtualNetworkRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "virtualNetworkRuleName": _SERIALIZER.url( - "virtual_network_rule_name", virtual_network_rule_name, "str", min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_virtual_network_rule_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, virtual_network_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/virtualnetworkrules/{virtualNetworkRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "virtualNetworkRuleName": _SERIALIZER.url( - "virtual_network_rule_name", virtual_network_rule_name, "str", min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_virtual_network_rule_request( - resource_group_name: str, namespace_name: str, virtual_network_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/virtualnetworkrules/{virtualNetworkRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "virtualNetworkRuleName": _SERIALIZER.url( - "virtual_network_rule_name", virtual_network_rule_name, "str", min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_check_name_availability_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/CheckNameAvailability" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_network_rule_set_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_network_rule_set_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_network_rule_sets_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_migrate_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrate", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class NamespacesOperations: # pylint: disable=too-many-public-methods - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_ip_filter_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.IpFilterRule"]: - """Gets a list of IP Filter rules for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either IpFilterRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.IpFilterRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_ip_filter_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("IpFilterRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_ip_filter_rule( - self, - resource_group_name: str, - namespace_name: str, - ip_filter_rule_name: str, - parameters: _models.IpFilterRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IpFilterRule: - """Creates or updates an IpFilterRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param ip_filter_rule_name: The IP Filter Rule name. Required. - :type ip_filter_rule_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: IpFilterRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_ip_filter_rule( - self, - resource_group_name: str, - namespace_name: str, - ip_filter_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.IpFilterRule: - """Creates or updates an IpFilterRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param ip_filter_rule_name: The IP Filter Rule name. Required. - :type ip_filter_rule_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: IpFilterRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_ip_filter_rule( - self, - resource_group_name: str, - namespace_name: str, - ip_filter_rule_name: str, - parameters: Union[_models.IpFilterRule, IO[bytes]], - **kwargs: Any - ) -> _models.IpFilterRule: - """Creates or updates an IpFilterRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param ip_filter_rule_name: The IP Filter Rule name. Required. - :type ip_filter_rule_name: str - :param parameters: The Namespace IpFilterRule. Is either a IpFilterRule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule or IO[bytes] - :return: IpFilterRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.IpFilterRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "IpFilterRule") - - _request = build_create_or_update_ip_filter_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - ip_filter_rule_name=ip_filter_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IpFilterRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_ip_filter_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, ip_filter_rule_name: str, **kwargs: Any - ) -> None: - """Deletes an IpFilterRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param ip_filter_rule_name: The IP Filter Rule name. Required. - :type ip_filter_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_ip_filter_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - ip_filter_rule_name=ip_filter_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_ip_filter_rule( - self, resource_group_name: str, namespace_name: str, ip_filter_rule_name: str, **kwargs: Any - ) -> _models.IpFilterRule: - """Gets an IpFilterRule for a Namespace by rule name. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param ip_filter_rule_name: The IP Filter Rule name. Required. - :type ip_filter_rule_name: str - :return: IpFilterRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.IpFilterRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.IpFilterRule] = kwargs.pop("cls", None) - - _request = build_get_ip_filter_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - ip_filter_rule_name=ip_filter_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("IpFilterRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace or IO[bytes] - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _delete_initial(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> LROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespaceUpdateParameters - or IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_virtual_network_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.VirtualNetworkRule"]: - """Gets a list of VirtualNetwork rules for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either VirtualNetworkRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.VirtualNetworkRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_virtual_network_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("VirtualNetworkRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_virtual_network_rule( - self, - resource_group_name: str, - namespace_name: str, - virtual_network_rule_name: str, - parameters: _models.VirtualNetworkRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.VirtualNetworkRule: - """Creates or updates an VirtualNetworkRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param virtual_network_rule_name: The Virtual Network Rule name. Required. - :type virtual_network_rule_name: str - :param parameters: The Namespace VirtualNetworkRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: VirtualNetworkRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_virtual_network_rule( - self, - resource_group_name: str, - namespace_name: str, - virtual_network_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.VirtualNetworkRule: - """Creates or updates an VirtualNetworkRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param virtual_network_rule_name: The Virtual Network Rule name. Required. - :type virtual_network_rule_name: str - :param parameters: The Namespace VirtualNetworkRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: VirtualNetworkRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_virtual_network_rule( - self, - resource_group_name: str, - namespace_name: str, - virtual_network_rule_name: str, - parameters: Union[_models.VirtualNetworkRule, IO[bytes]], - **kwargs: Any - ) -> _models.VirtualNetworkRule: - """Creates or updates an VirtualNetworkRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param virtual_network_rule_name: The Virtual Network Rule name. Required. - :type virtual_network_rule_name: str - :param parameters: The Namespace VirtualNetworkRule. Is either a VirtualNetworkRule type or a - IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule or - IO[bytes] - :return: VirtualNetworkRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.VirtualNetworkRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "VirtualNetworkRule") - - _request = build_create_or_update_virtual_network_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - virtual_network_rule_name=virtual_network_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("VirtualNetworkRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_virtual_network_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, virtual_network_rule_name: str, **kwargs: Any - ) -> None: - """Deletes an VirtualNetworkRule for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param virtual_network_rule_name: The Virtual Network Rule name. Required. - :type virtual_network_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_virtual_network_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - virtual_network_rule_name=virtual_network_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_virtual_network_rule( - self, resource_group_name: str, namespace_name: str, virtual_network_rule_name: str, **kwargs: Any - ) -> _models.VirtualNetworkRule: - """Gets an VirtualNetworkRule for a Namespace by rule name. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param virtual_network_rule_name: The Virtual Network Rule name. Required. - :type virtual_network_rule_name: str - :return: VirtualNetworkRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.VirtualNetworkRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.VirtualNetworkRule] = kwargs.pop("cls", None) - - _request = build_get_virtual_network_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - virtual_network_rule_name=virtual_network_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("VirtualNetworkRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceMigrate, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespaceMigrate - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def migrate( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceMigrate, IO[bytes]], - **kwargs: Any - ) -> None: - """This operation Migrate the given namespace to provided name type. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to migrate namespace type. Is either a - SBNamespaceMigrate type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBNamespaceMigrate or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceMigrate") - - _request = build_migrate_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_operations.py deleted file mode 100644 index 75937c74b08a..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_operations.py +++ /dev/null @@ -1,156 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.ServiceBus/operations") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_premium_messaging_regions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_premium_messaging_regions_operations.py deleted file mode 100644 index 5de197204e3f..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_premium_messaging_regions_operations.py +++ /dev/null @@ -1,165 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/premiumMessagingRegions" - ) # pylint: disable=line-too-long - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PremiumMessagingRegionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`premium_messaging_regions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.PremiumMessagingRegions"]: - """Gets the available premium messaging regions for servicebus. - - :return: An iterator like instance of either PremiumMessagingRegions or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.PremiumMessagingRegions] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.PremiumMessagingRegionsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PremiumMessagingRegionsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index 5c6055e6e5f4..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,644 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - or IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> LROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_private_link_resources_operations.py deleted file mode 100644 index db4b6d575ece..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,153 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateLinkResources", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_queues_operations.py deleted file mode 100644 index 664bac3c2325..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_queues_operations.py +++ /dev/null @@ -1,1453 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_regions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_regions_operations.py deleted file mode 100644 index 9214ec09f6db..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_regions_operations.py +++ /dev/null @@ -1,169 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_sku_request(sku: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/sku/{sku}/regions" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "sku": _SERIALIZER.url("sku", sku, "str", max_length=50, min_length=1), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RegionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`regions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_sku(self, sku: str, **kwargs: Any) -> Iterable["_models.PremiumMessagingRegions"]: - """Gets the available Regions for a given sku. - - :param sku: The sku type. Required. - :type sku: str - :return: An iterator like instance of either PremiumMessagingRegions or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.PremiumMessagingRegions] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.PremiumMessagingRegionsListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_sku_request( - sku=sku, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PremiumMessagingRegionsListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_rules_operations.py deleted file mode 100644 index 2a32be39b808..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_rules_operations.py +++ /dev/null @@ -1,648 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscriptions_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_subscriptions_operations.py deleted file mode 100644 index 70e3317659b4..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_subscriptions_operations.py +++ /dev/null @@ -1,627 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_topic_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_topics_operations.py deleted file mode 100644 index 0fd6bced2556..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/operations/_topics_operations.py +++ /dev/null @@ -1,1462 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2018-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2018_01_01_preview.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2018_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2018_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2018-01-01-preview") - ) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/py.typed b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/py.typed deleted file mode 100644 index e5aff4f83af8..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2018_01_01_preview/py.typed +++ /dev/null @@ -1 +0,0 @@ -# Marker file for PEP 561. \ No newline at end of file diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/__init__.py deleted file mode 100644 index 2e171d69863b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/__init__.py +++ /dev/null @@ -1,26 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient -from ._version import VERSION - -__version__ = VERSION - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_configuration.py deleted file mode 100644 index b23ab55753f4..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy - -from ._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2021-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2021-01-01-preview") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = ARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_metadata.json b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_metadata.json deleted file mode 100644 index e2de80fd012c..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_metadata.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "chosen_version": "2021-01-01-preview", - "total_api_version_list": ["2021-01-01-preview"], - "client": { - "name": "ServiceBusManagementClient", - "filename": "_service_bus_management_client", - "description": "Azure Service Bus client for managing Namespace.", - "host_value": "\"https://management.azure.com\"", - "parameterized_host_template": null, - "azure_arm": true, - "has_public_lro_operations": true, - "client_side_validation": false, - "sync_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"ARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \".._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"AsyncARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"AsyncARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \"..._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "global_parameters": { - "sync": { - "credential": { - "signature": "credential: \"TokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials.TokenCredential", - "required": true, - "method_location": "positional" - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true, - "method_location": "positional" - } - }, - "async": { - "credential": { - "signature": "credential: \"AsyncTokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials_async.AsyncTokenCredential", - "required": true - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true - } - }, - "constant": { - }, - "call": "credential, subscription_id", - "service_client_specific": { - "sync": { - "api_version": { - "signature": "api_version: Optional[str]=None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles=KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - }, - "async": { - "api_version": { - "signature": "api_version: Optional[str] = None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles = KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - } - } - }, - "config": { - "credential": true, - "credential_scopes": ["https://management.azure.com/.default"], - "credential_call_sync": "ARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "credential_call_async": "AsyncARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "sync_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMChallengeAuthenticationPolicy\", \"ARMHttpLoggingPolicy\"]}, \"local\": {\"._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMHttpLoggingPolicy\", \"AsyncARMChallengeAuthenticationPolicy\"]}, \"local\": {\".._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "operation_groups": { - "namespaces": "NamespacesOperations", - "private_endpoint_connections": "PrivateEndpointConnectionsOperations", - "private_link_resources": "PrivateLinkResourcesOperations", - "operations": "Operations", - "disaster_recovery_configs": "DisasterRecoveryConfigsOperations", - "migration_configs": "MigrationConfigsOperations", - "queues": "QueuesOperations", - "topics": "TopicsOperations", - "rules": "RulesOperations", - "subscriptions": "SubscriptionsOperations" - } -} diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_service_bus_management_client.py deleted file mode 100644 index 71b6a09e3eda..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_service_bus_management_client.py +++ /dev/null @@ -1,176 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import HttpRequest, HttpResponse -from azure.mgmt.core import ARMPipelineClient -from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy - -from . import models as _models -from .._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: azure.mgmt.servicebus.v2021_01_01_preview.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2021_01_01_preview.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2021_01_01_preview.operations.PrivateLinkResourcesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2021_01_01_preview.operations.Operations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2021_01_01_preview.operations.DisasterRecoveryConfigsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2021_01_01_preview.operations.MigrationConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2021_01_01_preview.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2021_01_01_preview.operations.TopicsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2021_01_01_preview.operations.RulesOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2021_01_01_preview.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2021-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "TokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - ARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.operations = Operations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.queues = QueuesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.topics = TopicsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.rules = RulesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - - def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.HttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - def close(self) -> None: - self._client.close() - - def __enter__(self) -> Self: - self._client.__enter__() - return self - - def __exit__(self, *exc_details: Any) -> None: - self._client.__exit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_version.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_version.py deleted file mode 100644 index 22d4eb39aa93..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/_version.py +++ /dev/null @@ -1,9 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -VERSION = "8.2.1" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/__init__.py deleted file mode 100644 index 530b8638dfd3..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_configuration.py deleted file mode 100644 index d10a2e47bf6e..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMHttpLoggingPolicy, AsyncARMChallengeAuthenticationPolicy - -from .._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2021-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2021-01-01-preview") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.AsyncRedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.AsyncRetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = AsyncARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_service_bus_management_client.py deleted file mode 100644 index 993e1c54891f..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/_service_bus_management_client.py +++ /dev/null @@ -1,179 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, Awaitable, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.mgmt.core import AsyncARMPipelineClient -from azure.mgmt.core.policies import AsyncARMAutoResourceProviderRegistrationPolicy - -from .. import models as _models -from ..._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: - azure.mgmt.servicebus.v2021_01_01_preview.aio.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2021_01_01_preview.aio.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2021_01_01_preview.aio.operations.PrivateLinkResourcesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2021_01_01_preview.aio.operations.Operations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2021_01_01_preview.aio.operations.DisasterRecoveryConfigsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2021_01_01_preview.aio.operations.MigrationConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2021_01_01_preview.aio.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2021_01_01_preview.aio.operations.TopicsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2021_01_01_preview.aio.operations.RulesOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2021_01_01_preview.aio.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2021-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "AsyncTokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - AsyncARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.operations = Operations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.queues = QueuesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.topics = TopicsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.rules = RulesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-01-01-preview" - ) - - def _send_request( - self, request: HttpRequest, *, stream: bool = False, **kwargs: Any - ) -> Awaitable[AsyncHttpResponse]: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = await client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.AsyncHttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - async def close(self) -> None: - await self._client.close() - - async def __aenter__(self) -> Self: - await self._client.__aenter__() - return self - - async def __aexit__(self, *exc_details: Any) -> None: - await self._client.__aexit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/__init__.py deleted file mode 100644 index e5431803c533..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/__init__.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._operations import Operations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._rules_operations import RulesOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "Operations", - "DisasterRecoveryConfigsOperations", - "MigrationConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "RulesOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index 68701d2fc19a..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,981 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._disaster_recovery_configs_operations import ( - build_break_pairing_request, - build_check_name_availability_request, - build_create_or_update_request, - build_delete_request, - build_fail_over_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_keys_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery or - IO[bytes] - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.ArmDisasterRecovery]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - if response.status_code == 200: - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.FailoverProperties or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_migration_configs_operations.py deleted file mode 100644 index 6274cc907086..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_migration_configs_operations.py +++ /dev/null @@ -1,631 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._migration_configs_operations import ( - build_complete_migration_request, - build_create_and_start_migration_request, - build_delete_request, - build_get_request, - build_list_request, - build_revert_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties - or IO[bytes] - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_namespaces_operations.py deleted file mode 100644 index d99baf51b556..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_namespaces_operations.py +++ /dev/null @@ -1,1717 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._namespaces_operations import ( - build_check_name_availability_request, - build_create_or_update_authorization_rule_request, - build_create_or_update_network_rule_set_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_network_rule_set_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_resource_group_request, - build_list_keys_request, - build_list_network_rule_sets_request, - build_list_request, - build_regenerate_keys_request, - build_update_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace or IO[bytes] - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> AsyncLROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespaceUpdateParameters - or IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_operations.py deleted file mode 100644 index 44338184ef32..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_operations.py +++ /dev/null @@ -1,134 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._operations import build_list_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index 939799fc6683..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,491 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._private_endpoint_connections_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - or IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncLROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_private_link_resources_operations.py deleted file mode 100644 index a21f0fb632c0..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,117 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._private_link_resources_operations import build_get_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_queues_operations.py deleted file mode 100644 index 1cd055dd827d..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_queues_operations.py +++ /dev/null @@ -1,1067 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._queues_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_rules_operations.py deleted file mode 100644 index e971daeaf453..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_rules_operations.py +++ /dev/null @@ -1,476 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._rules_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_subscriptions_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_subscriptions_operations.py deleted file mode 100644 index acea269a9a0c..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_subscriptions_operations.py +++ /dev/null @@ -1,462 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._subscriptions_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_topic_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_topics_operations.py deleted file mode 100644 index 1104d2717733..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/aio/operations/_topics_operations.py +++ /dev/null @@ -1,1076 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._topics_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/__init__.py deleted file mode 100644 index ccc88d9ba3f9..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/__init__.py +++ /dev/null @@ -1,157 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._models_py3 import AccessKeys -from ._models_py3 import Action -from ._models_py3 import ArmDisasterRecovery -from ._models_py3 import ArmDisasterRecoveryListResult -from ._models_py3 import CheckNameAvailability -from ._models_py3 import CheckNameAvailabilityResult -from ._models_py3 import ConnectionState -from ._models_py3 import CorrelationFilter -from ._models_py3 import DictionaryValue -from ._models_py3 import Encryption -from ._models_py3 import ErrorAdditionalInfo -from ._models_py3 import ErrorResponse -from ._models_py3 import ErrorResponseError -from ._models_py3 import FailoverProperties -from ._models_py3 import Identity -from ._models_py3 import KeyVaultProperties -from ._models_py3 import MessageCountDetails -from ._models_py3 import MigrationConfigListResult -from ._models_py3 import MigrationConfigProperties -from ._models_py3 import NWRuleSetIpRules -from ._models_py3 import NWRuleSetVirtualNetworkRules -from ._models_py3 import NetworkRuleSet -from ._models_py3 import NetworkRuleSetListResult -from ._models_py3 import Operation -from ._models_py3 import OperationDisplay -from ._models_py3 import OperationListResult -from ._models_py3 import PrivateEndpoint -from ._models_py3 import PrivateEndpointConnection -from ._models_py3 import PrivateEndpointConnectionListResult -from ._models_py3 import PrivateLinkResource -from ._models_py3 import PrivateLinkResourcesListResult -from ._models_py3 import RegenerateAccessKeyParameters -from ._models_py3 import Resource -from ._models_py3 import ResourceNamespacePatch -from ._models_py3 import Rule -from ._models_py3 import RuleListResult -from ._models_py3 import SBAuthorizationRule -from ._models_py3 import SBAuthorizationRuleListResult -from ._models_py3 import SBNamespace -from ._models_py3 import SBNamespaceListResult -from ._models_py3 import SBNamespaceUpdateParameters -from ._models_py3 import SBQueue -from ._models_py3 import SBQueueListResult -from ._models_py3 import SBSku -from ._models_py3 import SBSubscription -from ._models_py3 import SBSubscriptionListResult -from ._models_py3 import SBTopic -from ._models_py3 import SBTopicListResult -from ._models_py3 import SqlFilter -from ._models_py3 import SqlRuleAction -from ._models_py3 import Subnet -from ._models_py3 import SystemData -from ._models_py3 import TrackedResource -from ._models_py3 import UserAssignedIdentityProperties - -from ._service_bus_management_client_enums import AccessRights -from ._service_bus_management_client_enums import CreatedByType -from ._service_bus_management_client_enums import DefaultAction -from ._service_bus_management_client_enums import EndPointProvisioningState -from ._service_bus_management_client_enums import EntityStatus -from ._service_bus_management_client_enums import FilterType -from ._service_bus_management_client_enums import KeyType -from ._service_bus_management_client_enums import ManagedServiceIdentityType -from ._service_bus_management_client_enums import MigrationConfigurationName -from ._service_bus_management_client_enums import NetworkRuleIPAction -from ._service_bus_management_client_enums import PrivateLinkConnectionStatus -from ._service_bus_management_client_enums import ProvisioningStateDR -from ._service_bus_management_client_enums import RoleDisasterRecovery -from ._service_bus_management_client_enums import SkuName -from ._service_bus_management_client_enums import SkuTier -from ._service_bus_management_client_enums import UnavailableReason -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "AccessKeys", - "Action", - "ArmDisasterRecovery", - "ArmDisasterRecoveryListResult", - "CheckNameAvailability", - "CheckNameAvailabilityResult", - "ConnectionState", - "CorrelationFilter", - "DictionaryValue", - "Encryption", - "ErrorAdditionalInfo", - "ErrorResponse", - "ErrorResponseError", - "FailoverProperties", - "Identity", - "KeyVaultProperties", - "MessageCountDetails", - "MigrationConfigListResult", - "MigrationConfigProperties", - "NWRuleSetIpRules", - "NWRuleSetVirtualNetworkRules", - "NetworkRuleSet", - "NetworkRuleSetListResult", - "Operation", - "OperationDisplay", - "OperationListResult", - "PrivateEndpoint", - "PrivateEndpointConnection", - "PrivateEndpointConnectionListResult", - "PrivateLinkResource", - "PrivateLinkResourcesListResult", - "RegenerateAccessKeyParameters", - "Resource", - "ResourceNamespacePatch", - "Rule", - "RuleListResult", - "SBAuthorizationRule", - "SBAuthorizationRuleListResult", - "SBNamespace", - "SBNamespaceListResult", - "SBNamespaceUpdateParameters", - "SBQueue", - "SBQueueListResult", - "SBSku", - "SBSubscription", - "SBSubscriptionListResult", - "SBTopic", - "SBTopicListResult", - "SqlFilter", - "SqlRuleAction", - "Subnet", - "SystemData", - "TrackedResource", - "UserAssignedIdentityProperties", - "AccessRights", - "CreatedByType", - "DefaultAction", - "EndPointProvisioningState", - "EntityStatus", - "FilterType", - "KeyType", - "ManagedServiceIdentityType", - "MigrationConfigurationName", - "NetworkRuleIPAction", - "PrivateLinkConnectionStatus", - "ProvisioningStateDR", - "RoleDisasterRecovery", - "SkuName", - "SkuTier", - "UnavailableReason", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_models_py3.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_models_py3.py deleted file mode 100644 index 9cd69a2134dc..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_models_py3.py +++ /dev/null @@ -1,2817 +0,0 @@ -# coding=utf-8 -# pylint: disable=too-many-lines -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -import datetime -from typing import Any, Dict, List, Literal, Optional, TYPE_CHECKING, Union - -from ... import _serialization - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from .. import models as _models - - -class AccessKeys(_serialization.Model): - """Namespace/ServiceBus Connection String. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar primary_connection_string: Primary connection string of the created namespace - authorization rule. - :vartype primary_connection_string: str - :ivar secondary_connection_string: Secondary connection string of the created namespace - authorization rule. - :vartype secondary_connection_string: str - :ivar alias_primary_connection_string: Primary connection string of the alias if GEO DR is - enabled. - :vartype alias_primary_connection_string: str - :ivar alias_secondary_connection_string: Secondary connection string of the alias if GEO DR is - enabled. - :vartype alias_secondary_connection_string: str - :ivar primary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype primary_key: str - :ivar secondary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype secondary_key: str - :ivar key_name: A string that describes the authorization rule. - :vartype key_name: str - """ - - _validation = { - "primary_connection_string": {"readonly": True}, - "secondary_connection_string": {"readonly": True}, - "alias_primary_connection_string": {"readonly": True}, - "alias_secondary_connection_string": {"readonly": True}, - "primary_key": {"readonly": True}, - "secondary_key": {"readonly": True}, - "key_name": {"readonly": True}, - } - - _attribute_map = { - "primary_connection_string": {"key": "primaryConnectionString", "type": "str"}, - "secondary_connection_string": {"key": "secondaryConnectionString", "type": "str"}, - "alias_primary_connection_string": {"key": "aliasPrimaryConnectionString", "type": "str"}, - "alias_secondary_connection_string": {"key": "aliasSecondaryConnectionString", "type": "str"}, - "primary_key": {"key": "primaryKey", "type": "str"}, - "secondary_key": {"key": "secondaryKey", "type": "str"}, - "key_name": {"key": "keyName", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.primary_connection_string = None - self.secondary_connection_string = None - self.alias_primary_connection_string = None - self.alias_secondary_connection_string = None - self.primary_key = None - self.secondary_key = None - self.key_name = None - - -class Action(_serialization.Model): - """Represents the filter actions which are allowed for the transformation of a message that have - been matched by a filter expression. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: Optional[int] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class Resource(_serialization.Model): - """The Resource definition for other than namespace. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id = None - self.name = None - self.type = None - - -class ArmDisasterRecovery(Resource): - """Single item in List or Get Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SystemData - :ivar provisioning_state: Provisioning state of the Alias(Disaster Recovery configuration) - - possible values 'Accepted' or 'Succeeded' or 'Failed'. Known values are: "Accepted", - "Succeeded", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.ProvisioningStateDR - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is part - of GEO DR pairing. - :vartype partner_namespace: str - :ivar alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :vartype alternate_name: str - :ivar role: role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' - or 'Secondary'. Known values are: "Primary", "PrimaryNotReplicating", and "Secondary". - :vartype role: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.RoleDisasterRecovery - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "role": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "partner_namespace": {"key": "properties.partnerNamespace", "type": "str"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - "role": {"key": "properties.role", "type": "str"}, - } - - def __init__( - self, *, partner_namespace: Optional[str] = None, alternate_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is - part of GEO DR pairing. - :paramtype partner_namespace: str - :keyword alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :paramtype alternate_name: str - """ - super().__init__(**kwargs) - self.system_data = None - self.provisioning_state = None - self.pending_replication_operations_count = None - self.partner_namespace = partner_namespace - self.alternate_name = alternate_name - self.role = None - - -class ArmDisasterRecoveryListResult(_serialization.Model): - """The result of the List Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Alias(Disaster Recovery configurations). - :vartype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Alias(Disaster Recovery configuration). - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[ArmDisasterRecovery]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.ArmDisasterRecovery"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Alias(Disaster Recovery configurations). - :paramtype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class CheckNameAvailability(_serialization.Model): - """Description of a Check Name availability request properties. - - All required parameters must be populated in order to send to server. - - :ivar name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :vartype name: str - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - } - - def __init__(self, *, name: str, **kwargs: Any) -> None: - """ - :keyword name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :paramtype name: str - """ - super().__init__(**kwargs) - self.name = name - - -class CheckNameAvailabilityResult(_serialization.Model): - """Description of a Check Name availability request properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar message: The detailed info regarding the reason associated with the namespace. - :vartype message: str - :ivar name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :vartype name_available: bool - :ivar reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :vartype reason: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.UnavailableReason - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "message": {"key": "message", "type": "str"}, - "name_available": {"key": "nameAvailable", "type": "bool"}, - "reason": {"key": "reason", "type": "str"}, - } - - def __init__( - self, - *, - name_available: Optional[bool] = None, - reason: Optional[Union[str, "_models.UnavailableReason"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :paramtype name_available: bool - :keyword reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :paramtype reason: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.UnavailableReason - """ - super().__init__(**kwargs) - self.message = None - self.name_available = name_available - self.reason = reason - - -class ConnectionState(_serialization.Model): - """ConnectionState information. - - :ivar status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :vartype status: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateLinkConnectionStatus - :ivar description: Description of the connection state. - :vartype description: str - """ - - _attribute_map = { - "status": {"key": "status", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__( - self, - *, - status: Optional[Union[str, "_models.PrivateLinkConnectionStatus"]] = None, - description: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :paramtype status: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateLinkConnectionStatus - :keyword description: Description of the connection state. - :paramtype description: str - """ - super().__init__(**kwargs) - self.status = status - self.description = description - - -class CorrelationFilter(_serialization.Model): - """Represents the correlation filter expression. - - :ivar properties: dictionary object for custom filters. - :vartype properties: dict[str, str] - :ivar correlation_id: Identifier of the correlation. - :vartype correlation_id: str - :ivar message_id: Identifier of the message. - :vartype message_id: str - :ivar to: Address to send to. - :vartype to: str - :ivar reply_to: Address of the queue to reply to. - :vartype reply_to: str - :ivar label: Application specific label. - :vartype label: str - :ivar session_id: Session identifier. - :vartype session_id: str - :ivar reply_to_session_id: Session identifier to reply to. - :vartype reply_to_session_id: str - :ivar content_type: Content type of the message. - :vartype content_type: str - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "properties": {"key": "properties", "type": "{str}"}, - "correlation_id": {"key": "correlationId", "type": "str"}, - "message_id": {"key": "messageId", "type": "str"}, - "to": {"key": "to", "type": "str"}, - "reply_to": {"key": "replyTo", "type": "str"}, - "label": {"key": "label", "type": "str"}, - "session_id": {"key": "sessionId", "type": "str"}, - "reply_to_session_id": {"key": "replyToSessionId", "type": "str"}, - "content_type": {"key": "contentType", "type": "str"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - properties: Optional[Dict[str, str]] = None, - correlation_id: Optional[str] = None, - message_id: Optional[str] = None, - to: Optional[str] = None, - reply_to: Optional[str] = None, - label: Optional[str] = None, - session_id: Optional[str] = None, - reply_to_session_id: Optional[str] = None, - content_type: Optional[str] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword properties: dictionary object for custom filters. - :paramtype properties: dict[str, str] - :keyword correlation_id: Identifier of the correlation. - :paramtype correlation_id: str - :keyword message_id: Identifier of the message. - :paramtype message_id: str - :keyword to: Address to send to. - :paramtype to: str - :keyword reply_to: Address of the queue to reply to. - :paramtype reply_to: str - :keyword label: Application specific label. - :paramtype label: str - :keyword session_id: Session identifier. - :paramtype session_id: str - :keyword reply_to_session_id: Session identifier to reply to. - :paramtype reply_to_session_id: str - :keyword content_type: Content type of the message. - :paramtype content_type: str - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.properties = properties - self.correlation_id = correlation_id - self.message_id = message_id - self.to = to - self.reply_to = reply_to - self.label = label - self.session_id = session_id - self.reply_to_session_id = reply_to_session_id - self.content_type = content_type - self.requires_preprocessing = requires_preprocessing - - -class DictionaryValue(_serialization.Model): - """Recognized Dictionary value. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar principal_id: Principal Id of user assigned identity. - :vartype principal_id: str - :ivar client_id: Client Id of user assigned identity. - :vartype client_id: str - """ - - _validation = { - "principal_id": {"readonly": True}, - "client_id": {"readonly": True}, - } - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "client_id": {"key": "clientId", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.principal_id = None - self.client_id = None - - -class Encryption(_serialization.Model): - """Properties to configure Encryption. - - :ivar key_vault_properties: Properties of KeyVault. - :vartype key_vault_properties: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.KeyVaultProperties] - :ivar key_source: Enumerates the possible value of keySource for Encryption. Default value is - "Microsoft.KeyVault". - :vartype key_source: str - :ivar require_infrastructure_encryption: Enable Infrastructure Encryption (Double Encryption). - :vartype require_infrastructure_encryption: bool - """ - - _attribute_map = { - "key_vault_properties": {"key": "keyVaultProperties", "type": "[KeyVaultProperties]"}, - "key_source": {"key": "keySource", "type": "str"}, - "require_infrastructure_encryption": {"key": "requireInfrastructureEncryption", "type": "bool"}, - } - - def __init__( - self, - *, - key_vault_properties: Optional[List["_models.KeyVaultProperties"]] = None, - key_source: Literal["Microsoft.KeyVault"] = "Microsoft.KeyVault", - require_infrastructure_encryption: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword key_vault_properties: Properties of KeyVault. - :paramtype key_vault_properties: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.KeyVaultProperties] - :keyword key_source: Enumerates the possible value of keySource for Encryption. Default value - is "Microsoft.KeyVault". - :paramtype key_source: str - :keyword require_infrastructure_encryption: Enable Infrastructure Encryption (Double - Encryption). - :paramtype require_infrastructure_encryption: bool - """ - super().__init__(**kwargs) - self.key_vault_properties = key_vault_properties - self.key_source = key_source - self.require_infrastructure_encryption = require_infrastructure_encryption - - -class ErrorAdditionalInfo(_serialization.Model): - """The resource management error additional info. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar type: The additional info type. - :vartype type: str - :ivar info: The additional info. - :vartype info: JSON - """ - - _validation = { - "type": {"readonly": True}, - "info": {"readonly": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "info": {"key": "info", "type": "object"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.type = None - self.info = None - - -class ErrorResponse(_serialization.Model): - """The resource management error response. - - :ivar error: The error object. - :vartype error: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ErrorResponseError - """ - - _attribute_map = { - "error": {"key": "error", "type": "ErrorResponseError"}, - } - - def __init__(self, *, error: Optional["_models.ErrorResponseError"] = None, **kwargs: Any) -> None: - """ - :keyword error: The error object. - :paramtype error: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ErrorResponseError - """ - super().__init__(**kwargs) - self.error = error - - -class ErrorResponseError(_serialization.Model): - """The error object. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.ErrorResponse] - :ivar additional_info: The error additional info. - :vartype additional_info: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[ErrorResponse]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code = None - self.message = None - self.target = None - self.details = None - self.additional_info = None - - -class FailoverProperties(_serialization.Model): - """Safe failover is to indicate the service should wait for pending replication to finish before - switching to the secondary. - - :ivar is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :vartype is_safe_failover: bool - """ - - _attribute_map = { - "is_safe_failover": {"key": "properties.IsSafeFailover", "type": "bool"}, - } - - def __init__(self, *, is_safe_failover: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :paramtype is_safe_failover: bool - """ - super().__init__(**kwargs) - self.is_safe_failover = is_safe_failover - - -class Identity(_serialization.Model): - """Properties to configure User Assigned Identities for Bring your Own Keys. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar principal_id: ObjectId from the KeyVault. - :vartype principal_id: str - :ivar tenant_id: TenantId from the KeyVault. - :vartype tenant_id: str - :ivar type: Type of managed service identity. Known values are: "SystemAssigned", - "UserAssigned", "SystemAssigned, UserAssigned", and "None". - :vartype type: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.ManagedServiceIdentityType - :ivar user_assigned_identities: Properties for User Assigned Identities. - :vartype user_assigned_identities: dict[str, - ~azure.mgmt.servicebus.v2021_01_01_preview.models.DictionaryValue] - """ - - _validation = { - "principal_id": {"readonly": True}, - "tenant_id": {"readonly": True}, - } - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "tenant_id": {"key": "tenantId", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "user_assigned_identities": {"key": "userAssignedIdentities", "type": "{DictionaryValue}"}, - } - - def __init__( - self, - *, - type: Optional[Union[str, "_models.ManagedServiceIdentityType"]] = None, - user_assigned_identities: Optional[Dict[str, "_models.DictionaryValue"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword type: Type of managed service identity. Known values are: "SystemAssigned", - "UserAssigned", "SystemAssigned, UserAssigned", and "None". - :paramtype type: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.ManagedServiceIdentityType - :keyword user_assigned_identities: Properties for User Assigned Identities. - :paramtype user_assigned_identities: dict[str, - ~azure.mgmt.servicebus.v2021_01_01_preview.models.DictionaryValue] - """ - super().__init__(**kwargs) - self.principal_id = None - self.tenant_id = None - self.type = type - self.user_assigned_identities = user_assigned_identities - - -class KeyVaultProperties(_serialization.Model): - """Properties to configure keyVault Properties. - - :ivar key_name: Name of the Key from KeyVault. - :vartype key_name: str - :ivar key_vault_uri: Uri of KeyVault. - :vartype key_vault_uri: str - :ivar key_version: Version of KeyVault. - :vartype key_version: str - :ivar identity: - :vartype identity: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.UserAssignedIdentityProperties - """ - - _attribute_map = { - "key_name": {"key": "keyName", "type": "str"}, - "key_vault_uri": {"key": "keyVaultUri", "type": "str"}, - "key_version": {"key": "keyVersion", "type": "str"}, - "identity": {"key": "identity", "type": "UserAssignedIdentityProperties"}, - } - - def __init__( - self, - *, - key_name: Optional[str] = None, - key_vault_uri: Optional[str] = None, - key_version: Optional[str] = None, - identity: Optional["_models.UserAssignedIdentityProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword key_name: Name of the Key from KeyVault. - :paramtype key_name: str - :keyword key_vault_uri: Uri of KeyVault. - :paramtype key_vault_uri: str - :keyword key_version: Version of KeyVault. - :paramtype key_version: str - :keyword identity: - :paramtype identity: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.UserAssignedIdentityProperties - """ - super().__init__(**kwargs) - self.key_name = key_name - self.key_vault_uri = key_vault_uri - self.key_version = key_version - self.identity = identity - - -class MessageCountDetails(_serialization.Model): - """Message Count Details. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar active_message_count: Number of active messages in the queue, topic, or subscription. - :vartype active_message_count: int - :ivar dead_letter_message_count: Number of messages that are dead lettered. - :vartype dead_letter_message_count: int - :ivar scheduled_message_count: Number of scheduled messages. - :vartype scheduled_message_count: int - :ivar transfer_message_count: Number of messages transferred to another queue, topic, or - subscription. - :vartype transfer_message_count: int - :ivar transfer_dead_letter_message_count: Number of messages transferred into dead letters. - :vartype transfer_dead_letter_message_count: int - """ - - _validation = { - "active_message_count": {"readonly": True}, - "dead_letter_message_count": {"readonly": True}, - "scheduled_message_count": {"readonly": True}, - "transfer_message_count": {"readonly": True}, - "transfer_dead_letter_message_count": {"readonly": True}, - } - - _attribute_map = { - "active_message_count": {"key": "activeMessageCount", "type": "int"}, - "dead_letter_message_count": {"key": "deadLetterMessageCount", "type": "int"}, - "scheduled_message_count": {"key": "scheduledMessageCount", "type": "int"}, - "transfer_message_count": {"key": "transferMessageCount", "type": "int"}, - "transfer_dead_letter_message_count": {"key": "transferDeadLetterMessageCount", "type": "int"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.active_message_count = None - self.dead_letter_message_count = None - self.scheduled_message_count = None - self.transfer_message_count = None - self.transfer_dead_letter_message_count = None - - -class MigrationConfigListResult(_serialization.Model): - """The result of the List migrationConfigurations operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Migration Configs. - :vartype value: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of migrationConfigurations. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[MigrationConfigProperties]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.MigrationConfigProperties"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Migration Configs. - :paramtype value: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class MigrationConfigProperties(Resource): - """Single item in List or Get Migration Config operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SystemData - :ivar provisioning_state: Provisioning state of Migration Configuration. - :vartype provisioning_state: str - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar target_namespace: Existing premium Namespace ARM Id name which has no entities, will be - used for migration. - :vartype target_namespace: str - :ivar post_migration_name: Name to access Standard Namespace after migration. - :vartype post_migration_name: str - :ivar migration_state: State in which Standard to Premium Migration is, possible values : - Unknown, Reverting, Completing, Initiating, Syncing, Active. - :vartype migration_state: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "migration_state": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "target_namespace": {"key": "properties.targetNamespace", "type": "str"}, - "post_migration_name": {"key": "properties.postMigrationName", "type": "str"}, - "migration_state": {"key": "properties.migrationState", "type": "str"}, - } - - def __init__( - self, *, target_namespace: Optional[str] = None, post_migration_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword target_namespace: Existing premium Namespace ARM Id name which has no entities, will - be used for migration. - :paramtype target_namespace: str - :keyword post_migration_name: Name to access Standard Namespace after migration. - :paramtype post_migration_name: str - """ - super().__init__(**kwargs) - self.system_data = None - self.provisioning_state = None - self.pending_replication_operations_count = None - self.target_namespace = target_namespace - self.post_migration_name = post_migration_name - self.migration_state = None - - -class NetworkRuleSet(Resource): - """Description of NetworkRuleSet resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SystemData - :ivar default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :vartype default_action: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.DefaultAction - :ivar virtual_network_rules: List VirtualNetwork Rules. - :vartype virtual_network_rules: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.NWRuleSetVirtualNetworkRules] - :ivar ip_rules: List of IpRules. - :vartype ip_rules: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.NWRuleSetIpRules] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "default_action": {"key": "properties.defaultAction", "type": "str"}, - "virtual_network_rules": {"key": "properties.virtualNetworkRules", "type": "[NWRuleSetVirtualNetworkRules]"}, - "ip_rules": {"key": "properties.ipRules", "type": "[NWRuleSetIpRules]"}, - } - - def __init__( - self, - *, - default_action: Optional[Union[str, "_models.DefaultAction"]] = None, - virtual_network_rules: Optional[List["_models.NWRuleSetVirtualNetworkRules"]] = None, - ip_rules: Optional[List["_models.NWRuleSetIpRules"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :paramtype default_action: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.DefaultAction - :keyword virtual_network_rules: List VirtualNetwork Rules. - :paramtype virtual_network_rules: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.NWRuleSetVirtualNetworkRules] - :keyword ip_rules: List of IpRules. - :paramtype ip_rules: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.NWRuleSetIpRules] - """ - super().__init__(**kwargs) - self.system_data = None - self.default_action = default_action - self.virtual_network_rules = virtual_network_rules - self.ip_rules = ip_rules - - -class NetworkRuleSetListResult(_serialization.Model): - """The response of the List NetworkRuleSet operation. - - :ivar value: Result of the List NetworkRuleSet operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of NetworkRuleSet. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[NetworkRuleSet]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.NetworkRuleSet"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List NetworkRuleSet operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of NetworkRuleSet. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class NWRuleSetIpRules(_serialization.Model): - """Description of NetWorkRuleSet - IpRules resource. - - :ivar ip_mask: IP Mask. - :vartype ip_mask: str - :ivar action: The IP Filter Action. "Allow" - :vartype action: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleIPAction - """ - - _attribute_map = { - "ip_mask": {"key": "ipMask", "type": "str"}, - "action": {"key": "action", "type": "str"}, - } - - def __init__( - self, - *, - ip_mask: Optional[str] = None, - action: Union[str, "_models.NetworkRuleIPAction"] = "Allow", - **kwargs: Any - ) -> None: - """ - :keyword ip_mask: IP Mask. - :paramtype ip_mask: str - :keyword action: The IP Filter Action. "Allow" - :paramtype action: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleIPAction - """ - super().__init__(**kwargs) - self.ip_mask = ip_mask - self.action = action - - -class NWRuleSetVirtualNetworkRules(_serialization.Model): - """Description of VirtualNetworkRules - NetworkRules resource. - - :ivar subnet: Subnet properties. - :vartype subnet: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Subnet - :ivar ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing VNet - Service Endpoint. - :vartype ignore_missing_vnet_service_endpoint: bool - """ - - _attribute_map = { - "subnet": {"key": "subnet", "type": "Subnet"}, - "ignore_missing_vnet_service_endpoint": {"key": "ignoreMissingVnetServiceEndpoint", "type": "bool"}, - } - - def __init__( - self, - *, - subnet: Optional["_models.Subnet"] = None, - ignore_missing_vnet_service_endpoint: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword subnet: Subnet properties. - :paramtype subnet: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Subnet - :keyword ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing - VNet Service Endpoint. - :paramtype ignore_missing_vnet_service_endpoint: bool - """ - super().__init__(**kwargs) - self.subnet = subnet - self.ignore_missing_vnet_service_endpoint = ignore_missing_vnet_service_endpoint - - -class Operation(_serialization.Model): - """A ServiceBus REST API operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar name: Operation name: {provider}/{resource}/{operation}. - :vartype name: str - :ivar display: The object that represents the operation. - :vartype display: ~azure.mgmt.servicebus.v2021_01_01_preview.models.OperationDisplay - """ - - _validation = { - "name": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "display": {"key": "display", "type": "OperationDisplay"}, - } - - def __init__(self, *, display: Optional["_models.OperationDisplay"] = None, **kwargs: Any) -> None: - """ - :keyword display: The object that represents the operation. - :paramtype display: ~azure.mgmt.servicebus.v2021_01_01_preview.models.OperationDisplay - """ - super().__init__(**kwargs) - self.name = None - self.display = display - - -class OperationDisplay(_serialization.Model): - """The object that represents the operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provider: Service provider: Microsoft.ServiceBus. - :vartype provider: str - :ivar resource: Resource on which the operation is performed: Invoice, etc. - :vartype resource: str - :ivar operation: Operation type: Read, write, delete, etc. - :vartype operation: str - """ - - _validation = { - "provider": {"readonly": True}, - "resource": {"readonly": True}, - "operation": {"readonly": True}, - } - - _attribute_map = { - "provider": {"key": "provider", "type": "str"}, - "resource": {"key": "resource", "type": "str"}, - "operation": {"key": "operation", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.provider = None - self.resource = None - self.operation = None - - -class OperationListResult(_serialization.Model): - """Result of the request to list ServiceBus operations. It contains a list of operations and a URL - link to get the next set of results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of ServiceBus operations supported by the Microsoft.ServiceBus resource - provider. - :vartype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.Operation] - :ivar next_link: URL to get the next set of operation list results if there are any. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Operation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value = None - self.next_link = None - - -class PrivateEndpoint(_serialization.Model): - """PrivateEndpoint information. - - :ivar id: The ARM identifier for Private Endpoint. - :vartype id: str - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: The ARM identifier for Private Endpoint. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class PrivateEndpointConnection(Resource): - """Properties of the PrivateEndpointConnection. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SystemData - :ivar private_endpoint: The Private Endpoint resource for this Connection. - :vartype private_endpoint: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpoint - :ivar private_link_service_connection_state: Details about the state of the connection. - :vartype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.ConnectionState - :ivar provisioning_state: Provisioning state of the Private Endpoint Connection. Known values - are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.EndPointProvisioningState - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "private_endpoint": {"key": "properties.privateEndpoint", "type": "PrivateEndpoint"}, - "private_link_service_connection_state": { - "key": "properties.privateLinkServiceConnectionState", - "type": "ConnectionState", - }, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - } - - def __init__( - self, - *, - private_endpoint: Optional["_models.PrivateEndpoint"] = None, - private_link_service_connection_state: Optional["_models.ConnectionState"] = None, - provisioning_state: Optional[Union[str, "_models.EndPointProvisioningState"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword private_endpoint: The Private Endpoint resource for this Connection. - :paramtype private_endpoint: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpoint - :keyword private_link_service_connection_state: Details about the state of the connection. - :paramtype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.ConnectionState - :keyword provisioning_state: Provisioning state of the Private Endpoint Connection. Known - values are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :paramtype provisioning_state: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.EndPointProvisioningState - """ - super().__init__(**kwargs) - self.system_data = None - self.private_endpoint = private_endpoint - self.private_link_service_connection_state = private_link_service_connection_state - self.provisioning_state = provisioning_state - - -class PrivateEndpointConnectionListResult(_serialization.Model): - """Result of the list of all private endpoint connections operation. - - :ivar value: A collection of private endpoint connection resources. - :vartype value: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection] - :ivar next_link: A link for the next page of private endpoint connection resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateEndpointConnection]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateEndpointConnection"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private endpoint connection resources. - :paramtype value: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection] - :keyword next_link: A link for the next page of private endpoint connection resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class PrivateLinkResource(_serialization.Model): - """Information of the private link resource. - - :ivar id: Fully qualified identifier of the resource. - :vartype id: str - :ivar name: Name of the resource. - :vartype name: str - :ivar type: Type of the resource. - :vartype type: str - :ivar group_id: - :vartype group_id: str - :ivar required_members: Required Members. - :vartype required_members: list[str] - :ivar required_zone_names: Required Zone Names. - :vartype required_zone_names: list[str] - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "group_id": {"key": "properties.groupId", "type": "str"}, - "required_members": {"key": "properties.requiredMembers", "type": "[str]"}, - "required_zone_names": {"key": "properties.requiredZoneNames", "type": "[str]"}, - } - - def __init__( - self, - *, - id: Optional[str] = None, # pylint: disable=redefined-builtin - name: Optional[str] = None, - type: Optional[str] = None, - group_id: Optional[str] = None, - required_members: Optional[List[str]] = None, - required_zone_names: Optional[List[str]] = None, - **kwargs: Any - ) -> None: - """ - :keyword id: Fully qualified identifier of the resource. - :paramtype id: str - :keyword name: Name of the resource. - :paramtype name: str - :keyword type: Type of the resource. - :paramtype type: str - :keyword group_id: - :paramtype group_id: str - :keyword required_members: Required Members. - :paramtype required_members: list[str] - :keyword required_zone_names: Required Zone Names. - :paramtype required_zone_names: list[str] - """ - super().__init__(**kwargs) - self.id = id - self.name = name - self.type = type - self.group_id = group_id - self.required_members = required_members - self.required_zone_names = required_zone_names - - -class PrivateLinkResourcesListResult(_serialization.Model): - """Result of the List private link resources operation. - - :ivar value: A collection of private link resources. - :vartype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateLinkResource] - :ivar next_link: A link for the next page of private link resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateLinkResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateLinkResource"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private link resources. - :paramtype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateLinkResource] - :keyword next_link: A link for the next page of private link resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class RegenerateAccessKeyParameters(_serialization.Model): - """Parameters supplied to the Regenerate Authorization Rule operation, specifies which key needs - to be reset. - - All required parameters must be populated in order to send to server. - - :ivar key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :vartype key_type: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.KeyType - :ivar key: Optional, if the key value provided, is reset for KeyType value or autogenerate Key - value set for keyType. - :vartype key: str - """ - - _validation = { - "key_type": {"required": True}, - } - - _attribute_map = { - "key_type": {"key": "keyType", "type": "str"}, - "key": {"key": "key", "type": "str"}, - } - - def __init__(self, *, key_type: Union[str, "_models.KeyType"], key: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :paramtype key_type: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.KeyType - :keyword key: Optional, if the key value provided, is reset for KeyType value or autogenerate - Key value set for keyType. - :paramtype key: str - """ - super().__init__(**kwargs) - self.key_type = key_type - self.key = key - - -class ResourceNamespacePatch(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: Optional[str] = None, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class Rule(Resource): - """Description of Rule Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SystemData - :ivar action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :vartype action: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Action - :ivar filter_type: Filter type that is evaluated against a BrokeredMessage. Known values are: - "SqlFilter" and "CorrelationFilter". - :vartype filter_type: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.FilterType - :ivar sql_filter: Properties of sqlFilter. - :vartype sql_filter: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SqlFilter - :ivar correlation_filter: Properties of correlationFilter. - :vartype correlation_filter: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.CorrelationFilter - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "action": {"key": "properties.action", "type": "Action"}, - "filter_type": {"key": "properties.filterType", "type": "str"}, - "sql_filter": {"key": "properties.sqlFilter", "type": "SqlFilter"}, - "correlation_filter": {"key": "properties.correlationFilter", "type": "CorrelationFilter"}, - } - - def __init__( - self, - *, - action: Optional["_models.Action"] = None, - filter_type: Optional[Union[str, "_models.FilterType"]] = None, - sql_filter: Optional["_models.SqlFilter"] = None, - correlation_filter: Optional["_models.CorrelationFilter"] = None, - **kwargs: Any - ) -> None: - """ - :keyword action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :paramtype action: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Action - :keyword filter_type: Filter type that is evaluated against a BrokeredMessage. Known values - are: "SqlFilter" and "CorrelationFilter". - :paramtype filter_type: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.FilterType - :keyword sql_filter: Properties of sqlFilter. - :paramtype sql_filter: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SqlFilter - :keyword correlation_filter: Properties of correlationFilter. - :paramtype correlation_filter: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.CorrelationFilter - """ - super().__init__(**kwargs) - self.system_data = None - self.action = action - self.filter_type = filter_type - self.sql_filter = sql_filter - self.correlation_filter = correlation_filter - - -class RuleListResult(_serialization.Model): - """The response of the List rule operation. - - :ivar value: Result of the List Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[Rule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.Rule"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBAuthorizationRule(Resource): - """Description of a namespace authorization rule. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SystemData - :ivar rights: The rights associated with the rule. - :vartype rights: list[str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessRights] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "rights": {"key": "properties.rights", "type": "[str]"}, - } - - def __init__(self, *, rights: Optional[List[Union[str, "_models.AccessRights"]]] = None, **kwargs: Any) -> None: - """ - :keyword rights: The rights associated with the rule. - :paramtype rights: list[str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessRights] - """ - super().__init__(**kwargs) - self.system_data = None - self.rights = rights - - -class SBAuthorizationRuleListResult(_serialization.Model): - """The response to the List Namespace operation. - - :ivar value: Result of the List Authorization Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Authorization Rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBAuthorizationRule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.SBAuthorizationRule"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Authorization Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Authorization Rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class TrackedResource(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class SBNamespace(TrackedResource): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Identity - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SystemData - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar zone_redundant: Enabling this property creates a Premium Service Bus Namespace in regions - supported availability zones. - :vartype zone_redundant: bool - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Encryption - :ivar private_endpoint_connections: List of private endpoint connections. - :vartype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "zone_redundant": {"key": "properties.zoneRedundant", "type": "bool"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - "private_endpoint_connections": { - "key": "properties.privateEndpointConnections", - "type": "[PrivateEndpointConnection]", - }, - } - - def __init__( - self, - *, - location: str, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - zone_redundant: Optional[bool] = None, - encryption: Optional["_models.Encryption"] = None, - private_endpoint_connections: Optional[List["_models.PrivateEndpointConnection"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Identity - :keyword zone_redundant: Enabling this property creates a Premium Service Bus Namespace in - regions supported availability zones. - :paramtype zone_redundant: bool - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Encryption - :keyword private_endpoint_connections: List of private endpoint connections. - :paramtype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection] - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.system_data = None - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.zone_redundant = zone_redundant - self.encryption = encryption - self.private_endpoint_connections = private_endpoint_connections - - -class SBNamespaceListResult(_serialization.Model): - """The response of the List Namespace operation. - - :ivar value: Result of the List Namespace operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Namespaces. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBNamespace]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBNamespace"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Namespace operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Namespaces. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBNamespaceUpdateParameters(ResourceNamespacePatch): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Identity - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar zone_redundant: Enabling this property creates a Premium Service Bus Namespace in regions - supported availability zones. - :vartype zone_redundant: bool - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Encryption - :ivar private_endpoint_connections: List of private endpoint connections. - :vartype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "zone_redundant": {"key": "properties.zoneRedundant", "type": "bool"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - "private_endpoint_connections": { - "key": "properties.privateEndpointConnections", - "type": "[PrivateEndpointConnection]", - }, - } - - def __init__( - self, - *, - location: Optional[str] = None, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - zone_redundant: Optional[bool] = None, - encryption: Optional["_models.Encryption"] = None, - private_endpoint_connections: Optional[List["_models.PrivateEndpointConnection"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Identity - :keyword zone_redundant: Enabling this property creates a Premium Service Bus Namespace in - regions supported availability zones. - :paramtype zone_redundant: bool - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Encryption - :keyword private_endpoint_connections: List of private endpoint connections. - :paramtype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection] - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.zone_redundant = zone_redundant - self.encryption = encryption - self.private_endpoint_connections = private_endpoint_connections - - -class SBQueue(Resource): # pylint: disable=too-many-instance-attributes - """Description of queue Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SystemData - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2021_01_01_preview.models.MessageCountDetails - :ivar created_at: The exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time a message was sent, or the last time there was a receive request - to this queue. - :vartype accessed_at: ~datetime.datetime - :ivar size_in_bytes: The size of the queue, in bytes. - :vartype size_in_bytes: int - :ivar message_count: The number of messages in the queue. - :vartype message_count: int - :ivar lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size of - memory allocated for the queue. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar requires_session: A value that indicates whether the queue supports the concept of - sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_message_expiration: A value that indicates whether this queue has dead - letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: The maximum delivery count. A message is automatically deadlettered - after this number of deliveries. default value is 10. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: A value that indicates whether the queue is to be partitioned across - multiple message brokers. - :vartype enable_partitioning: bool - :ivar enable_express: A value that indicates whether Express Entities are enabled. An express - queue holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "count_details": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "message_count": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size - of memory allocated for the queue. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword requires_session: A value that indicates whether the queue supports the concept of - sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_message_expiration: A value that indicates whether this queue has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: The maximum delivery count. A message is automatically - deadlettered after this number of deliveries. default value is 10. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: A value that indicates whether the queue is to be partitioned - across multiple message brokers. - :paramtype enable_partitioning: bool - :keyword enable_express: A value that indicates whether Express Entities are enabled. An - express queue holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - """ - super().__init__(**kwargs) - self.system_data = None - self.count_details = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.size_in_bytes = None - self.message_count = None - self.lock_duration = lock_duration - self.max_size_in_megabytes = max_size_in_megabytes - self.requires_duplicate_detection = requires_duplicate_detection - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - - -class SBQueueListResult(_serialization.Model): - """The response to the List Queues operation. - - :ivar value: Result of the List Queues operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of queues. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBQueue]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBQueue"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Queues operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of queues. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBSku(_serialization.Model): - """SKU of the namespace. - - All required parameters must be populated in order to send to server. - - :ivar name: Name of this SKU. Required. Known values are: "Basic", "Standard", and "Premium". - :vartype name: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.SkuName - :ivar tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", and - "Premium". - :vartype tier: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.SkuTier - :ivar capacity: The specified messaging units for the tier. For Premium tier, capacity are 1,2 - and 4. - :vartype capacity: int - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "tier": {"key": "tier", "type": "str"}, - "capacity": {"key": "capacity", "type": "int"}, - } - - def __init__( - self, - *, - name: Union[str, "_models.SkuName"], - tier: Optional[Union[str, "_models.SkuTier"]] = None, - capacity: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Name of this SKU. Required. Known values are: "Basic", "Standard", and - "Premium". - :paramtype name: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.SkuName - :keyword tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", - and "Premium". - :paramtype tier: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.SkuTier - :keyword capacity: The specified messaging units for the tier. For Premium tier, capacity are - 1,2 and 4. - :paramtype capacity: int - """ - super().__init__(**kwargs) - self.name = name - self.tier = tier - self.capacity = capacity - - -class SBSubscription(Resource): # pylint: disable=too-many-instance-attributes - """Description of subscription resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SystemData - :ivar message_count: Number of messages. - :vartype message_count: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar accessed_at: Last time there was a receive request to this subscription. - :vartype accessed_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2021_01_01_preview.models.MessageCountDetails - :ivar lock_duration: ISO 8061 lock duration timespan for the subscription. The default value is - 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar requires_session: Value indicating if a subscription supports the concept of sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :vartype dead_lettering_on_filter_evaluation_exceptions: bool - :ivar dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: Number of maximum deliveries. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "message_count": {"readonly": True}, - "created_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_filter_evaluation_exceptions": { - "key": "properties.deadLetteringOnFilterEvaluationExceptions", - "type": "bool", - }, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - } - - def __init__( - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_filter_evaluation_exceptions: Optional[bool] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8061 lock duration timespan for the subscription. The default value - is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword requires_session: Value indicating if a subscription supports the concept of sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :paramtype dead_lettering_on_filter_evaluation_exceptions: bool - :keyword dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: Number of maximum deliveries. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - """ - super().__init__(**kwargs) - self.system_data = None - self.message_count = None - self.created_at = None - self.accessed_at = None - self.updated_at = None - self.count_details = None - self.lock_duration = lock_duration - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_filter_evaluation_exceptions = dead_lettering_on_filter_evaluation_exceptions - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - - -class SBSubscriptionListResult(_serialization.Model): - """The response to the List Subscriptions operation. - - :ivar value: Result of the List Subscriptions operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of subscriptions. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBSubscription]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBSubscription"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Subscriptions operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of subscriptions. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBTopic(Resource): # pylint: disable=too-many-instance-attributes - """Description of topic resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SystemData - :ivar size_in_bytes: Size of the topic, in bytes. - :vartype size_in_bytes: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time the message was sent, or a request was received, for this topic. - :vartype accessed_at: ~datetime.datetime - :ivar subscription_count: Number of subscriptions. - :vartype subscription_count: int - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2021_01_01_preview.models.MessageCountDetails - :ivar default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of the - memory allocated for the topic. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.EntityStatus - :ivar support_ordering: Value that indicates whether the topic supports ordering. - :vartype support_ordering: bool - :ivar auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :vartype enable_partitioning: bool - :ivar enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "subscription_count": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "subscription_count": {"key": "properties.subscriptionCount", "type": "int"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "status": {"key": "properties.status", "type": "str"}, - "support_ordering": {"key": "properties.supportOrdering", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - } - - def __init__( - self, - *, - default_message_time_to_live: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - enable_batched_operations: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - support_ordering: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of - the memory allocated for the topic. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2021_01_01_preview.models.EntityStatus - :keyword support_ordering: Value that indicates whether the topic supports ordering. - :paramtype support_ordering: bool - :keyword auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :paramtype enable_partitioning: bool - :keyword enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - """ - super().__init__(**kwargs) - self.system_data = None - self.size_in_bytes = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.subscription_count = None - self.count_details = None - self.default_message_time_to_live = default_message_time_to_live - self.max_size_in_megabytes = max_size_in_megabytes - self.requires_duplicate_detection = requires_duplicate_detection - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.enable_batched_operations = enable_batched_operations - self.status = status - self.support_ordering = support_ordering - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - - -class SBTopicListResult(_serialization.Model): - """The response to the List Topics operation. - - :ivar value: Result of the List Topics operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of topics. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBTopic]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBTopic"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Topics operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of topics. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SqlFilter(_serialization.Model): - """Represents a filter which is a composition of an expression and an action that is executed in - the pub/sub pipeline. - - :ivar sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _validation = { - "compatibility_level": {"maximum": 20, "minimum": 20}, - } - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: int = 20, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class SqlRuleAction(Action): - """Represents set of actions written in SQL language-based syntax that is performed against a - ServiceBus.Messaging.BrokeredMessage. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - -class Subnet(_serialization.Model): - """Properties supplied for Subnet. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource ID of Virtual Network Subnet. Required. - :vartype id: str - """ - - _validation = { - "id": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: str, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: Resource ID of Virtual Network Subnet. Required. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class SystemData(_serialization.Model): - """Metadata pertaining to creation and last modification of the resource. - - :ivar created_by: The identity that created the resource. - :vartype created_by: str - :ivar created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :vartype created_by_type: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.CreatedByType - :ivar created_at: The timestamp of resource creation (UTC). - :vartype created_at: ~datetime.datetime - :ivar last_modified_by: The identity that last modified the resource. - :vartype last_modified_by: str - :ivar last_modified_by_type: The type of identity that last modified the resource. Known values - are: "User", "Application", "ManagedIdentity", and "Key". - :vartype last_modified_by_type: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.CreatedByType - :ivar last_modified_at: The type of identity that last modified the resource. - :vartype last_modified_at: ~datetime.datetime - """ - - _attribute_map = { - "created_by": {"key": "createdBy", "type": "str"}, - "created_by_type": {"key": "createdByType", "type": "str"}, - "created_at": {"key": "createdAt", "type": "iso-8601"}, - "last_modified_by": {"key": "lastModifiedBy", "type": "str"}, - "last_modified_by_type": {"key": "lastModifiedByType", "type": "str"}, - "last_modified_at": {"key": "lastModifiedAt", "type": "iso-8601"}, - } - - def __init__( - self, - *, - created_by: Optional[str] = None, - created_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - created_at: Optional[datetime.datetime] = None, - last_modified_by: Optional[str] = None, - last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - last_modified_at: Optional[datetime.datetime] = None, - **kwargs: Any - ) -> None: - """ - :keyword created_by: The identity that created the resource. - :paramtype created_by: str - :keyword created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :paramtype created_by_type: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.CreatedByType - :keyword created_at: The timestamp of resource creation (UTC). - :paramtype created_at: ~datetime.datetime - :keyword last_modified_by: The identity that last modified the resource. - :paramtype last_modified_by: str - :keyword last_modified_by_type: The type of identity that last modified the resource. Known - values are: "User", "Application", "ManagedIdentity", and "Key". - :paramtype last_modified_by_type: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.CreatedByType - :keyword last_modified_at: The type of identity that last modified the resource. - :paramtype last_modified_at: ~datetime.datetime - """ - super().__init__(**kwargs) - self.created_by = created_by - self.created_by_type = created_by_type - self.created_at = created_at - self.last_modified_by = last_modified_by - self.last_modified_by_type = last_modified_by_type - self.last_modified_at = last_modified_at - - -class UserAssignedIdentityProperties(_serialization.Model): - """UserAssignedIdentityProperties. - - :ivar user_assigned_identity: ARM ID of user Identity selected for encryption. - :vartype user_assigned_identity: str - """ - - _attribute_map = { - "user_assigned_identity": {"key": "userAssignedIdentity", "type": "str"}, - } - - def __init__(self, *, user_assigned_identity: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword user_assigned_identity: ARM ID of user Identity selected for encryption. - :paramtype user_assigned_identity: str - """ - super().__init__(**kwargs) - self.user_assigned_identity = user_assigned_identity diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_service_bus_management_client_enums.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_service_bus_management_client_enums.py deleted file mode 100644 index 4eff4b68262a..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/models/_service_bus_management_client_enums.py +++ /dev/null @@ -1,150 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from enum import Enum -from azure.core import CaseInsensitiveEnumMeta - - -class AccessRights(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """AccessRights.""" - - MANAGE = "Manage" - SEND = "Send" - LISTEN = "Listen" - - -class CreatedByType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The type of identity that created the resource.""" - - USER = "User" - APPLICATION = "Application" - MANAGED_IDENTITY = "ManagedIdentity" - KEY = "Key" - - -class DefaultAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Default Action for Network Rule Set.""" - - ALLOW = "Allow" - DENY = "Deny" - - -class EndPointProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Private Endpoint Connection.""" - - CREATING = "Creating" - UPDATING = "Updating" - DELETING = "Deleting" - SUCCEEDED = "Succeeded" - CANCELED = "Canceled" - FAILED = "Failed" - - -class EntityStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Entity status.""" - - ACTIVE = "Active" - DISABLED = "Disabled" - RESTORING = "Restoring" - SEND_DISABLED = "SendDisabled" - RECEIVE_DISABLED = "ReceiveDisabled" - CREATING = "Creating" - DELETING = "Deleting" - RENAMING = "Renaming" - UNKNOWN = "Unknown" - - -class FilterType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Rule filter types.""" - - SQL_FILTER = "SqlFilter" - CORRELATION_FILTER = "CorrelationFilter" - - -class KeyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The access key to regenerate.""" - - PRIMARY_KEY = "PrimaryKey" - SECONDARY_KEY = "SecondaryKey" - - -class ManagedServiceIdentityType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Type of managed service identity.""" - - SYSTEM_ASSIGNED = "SystemAssigned" - USER_ASSIGNED = "UserAssigned" - SYSTEM_ASSIGNED_USER_ASSIGNED = "SystemAssigned, UserAssigned" - NONE = "None" - - -class MigrationConfigurationName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """MigrationConfigurationName.""" - - _DEFAULT = "$default" - - -class NetworkRuleIPAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The IP Filter Action.""" - - ALLOW = "Allow" - - -class PrivateLinkConnectionStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Status of the connection.""" - - PENDING = "Pending" - APPROVED = "Approved" - REJECTED = "Rejected" - DISCONNECTED = "Disconnected" - - -class ProvisioningStateDR(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Alias(Disaster Recovery configuration) - possible values 'Accepted' - or 'Succeeded' or 'Failed'. - """ - - ACCEPTED = "Accepted" - SUCCEEDED = "Succeeded" - FAILED = "Failed" - - -class RoleDisasterRecovery(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' or - 'Secondary'. - """ - - PRIMARY = "Primary" - PRIMARY_NOT_REPLICATING = "PrimaryNotReplicating" - SECONDARY = "Secondary" - - -class SkuName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Name of this SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class SkuTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The billing tier of this particular SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class UnavailableReason(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Specifies the reason for the unavailability of the service.""" - - NONE = "None" - INVALID_NAME = "InvalidName" - SUBSCRIPTION_IS_DISABLED = "SubscriptionIsDisabled" - NAME_IN_USE = "NameInUse" - NAME_IN_LOCKDOWN = "NameInLockdown" - TOO_MANY_NAMESPACE_IN_CURRENT_SUBSCRIPTION = "TooManyNamespaceInCurrentSubscription" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/__init__.py deleted file mode 100644 index e5431803c533..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/__init__.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._operations import Operations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._rules_operations import RulesOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "Operations", - "DisasterRecoveryConfigsOperations", - "MigrationConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "RulesOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index d5fb370e1a20..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,1335 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_check_name_availability_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/CheckNameAvailability", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_break_pairing_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/breakPairing", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_fail_over_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/failover", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery or - IO[bytes] - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.ArmDisasterRecovery]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - if response.status_code == 200: - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.FailoverProperties or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_migration_configs_operations.py deleted file mode 100644 index d75febdd02fb..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_migration_configs_operations.py +++ /dev/null @@ -1,852 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_and_start_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_complete_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/upgrade", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_revert_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/revert", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties - or IO[bytes] - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_namespaces_operations.py deleted file mode 100644 index 7a299a244d75..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_namespaces_operations.py +++ /dev/null @@ -1,2242 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/namespaces") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_network_rule_set_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_network_rule_set_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_network_rule_sets_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_check_name_availability_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/CheckNameAvailability" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace or IO[bytes] - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _delete_initial(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> LROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespaceUpdateParameters - or IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_operations.py deleted file mode 100644 index cf2fc338b9b4..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_operations.py +++ /dev/null @@ -1,156 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.ServiceBus/operations") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index 84ddd5d8a641..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,644 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - or IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> LROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_private_link_resources_operations.py deleted file mode 100644 index 8b7e2fa9d180..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,153 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateLinkResources", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_queues_operations.py deleted file mode 100644 index dc4f4ca40d69..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_queues_operations.py +++ /dev/null @@ -1,1453 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_rules_operations.py deleted file mode 100644 index f9b14d78c118..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_rules_operations.py +++ /dev/null @@ -1,648 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscriptions_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_subscriptions_operations.py deleted file mode 100644 index 43679a492918..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_subscriptions_operations.py +++ /dev/null @@ -1,627 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_topic_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_topics_operations.py deleted file mode 100644 index a36da8ede16a..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/operations/_topics_operations.py +++ /dev/null @@ -1,1462 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_01_01_preview.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-01-01-preview") - ) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/py.typed b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/py.typed deleted file mode 100644 index e5aff4f83af8..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_01_01_preview/py.typed +++ /dev/null @@ -1 +0,0 @@ -# Marker file for PEP 561. \ No newline at end of file diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/__init__.py deleted file mode 100644 index 2e171d69863b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/__init__.py +++ /dev/null @@ -1,26 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient -from ._version import VERSION - -__version__ = VERSION - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_configuration.py deleted file mode 100644 index ab0e38976d1f..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy - -from ._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2021-06-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2021-06-01-preview") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = ARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_metadata.json b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_metadata.json deleted file mode 100644 index 4ddb72c4f889..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_metadata.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "chosen_version": "2021-06-01-preview", - "total_api_version_list": ["2021-06-01-preview"], - "client": { - "name": "ServiceBusManagementClient", - "filename": "_service_bus_management_client", - "description": "Azure Service Bus client for managing Namespace.", - "host_value": "\"https://management.azure.com\"", - "parameterized_host_template": null, - "azure_arm": true, - "has_public_lro_operations": true, - "client_side_validation": false, - "sync_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"ARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \".._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"AsyncARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"AsyncARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \"..._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "global_parameters": { - "sync": { - "credential": { - "signature": "credential: \"TokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials.TokenCredential", - "required": true, - "method_location": "positional" - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true, - "method_location": "positional" - } - }, - "async": { - "credential": { - "signature": "credential: \"AsyncTokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials_async.AsyncTokenCredential", - "required": true - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true - } - }, - "constant": { - }, - "call": "credential, subscription_id", - "service_client_specific": { - "sync": { - "api_version": { - "signature": "api_version: Optional[str]=None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles=KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - }, - "async": { - "api_version": { - "signature": "api_version: Optional[str] = None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles = KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - } - } - }, - "config": { - "credential": true, - "credential_scopes": ["https://management.azure.com/.default"], - "credential_call_sync": "ARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "credential_call_async": "AsyncARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "sync_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMChallengeAuthenticationPolicy\", \"ARMHttpLoggingPolicy\"]}, \"local\": {\"._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMHttpLoggingPolicy\", \"AsyncARMChallengeAuthenticationPolicy\"]}, \"local\": {\".._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "operation_groups": { - "namespaces": "NamespacesOperations", - "private_endpoint_connections": "PrivateEndpointConnectionsOperations", - "private_link_resources": "PrivateLinkResourcesOperations", - "operations": "Operations", - "disaster_recovery_configs": "DisasterRecoveryConfigsOperations", - "migration_configs": "MigrationConfigsOperations", - "queues": "QueuesOperations", - "topics": "TopicsOperations", - "rules": "RulesOperations", - "subscriptions": "SubscriptionsOperations" - } -} diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_service_bus_management_client.py deleted file mode 100644 index bc6f875a6fda..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_service_bus_management_client.py +++ /dev/null @@ -1,176 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import HttpRequest, HttpResponse -from azure.mgmt.core import ARMPipelineClient -from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy - -from . import models as _models -from .._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: azure.mgmt.servicebus.v2021_06_01_preview.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2021_06_01_preview.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2021_06_01_preview.operations.PrivateLinkResourcesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2021_06_01_preview.operations.Operations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2021_06_01_preview.operations.DisasterRecoveryConfigsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2021_06_01_preview.operations.MigrationConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2021_06_01_preview.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2021_06_01_preview.operations.TopicsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2021_06_01_preview.operations.RulesOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2021_06_01_preview.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2021-06-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "TokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - ARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.operations = Operations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.queues = QueuesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.topics = TopicsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.rules = RulesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - - def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.HttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - def close(self) -> None: - self._client.close() - - def __enter__(self) -> Self: - self._client.__enter__() - return self - - def __exit__(self, *exc_details: Any) -> None: - self._client.__exit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_version.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_version.py deleted file mode 100644 index 22d4eb39aa93..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/_version.py +++ /dev/null @@ -1,9 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -VERSION = "8.2.1" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/__init__.py deleted file mode 100644 index 530b8638dfd3..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_configuration.py deleted file mode 100644 index 8c6b44cf2147..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMHttpLoggingPolicy, AsyncARMChallengeAuthenticationPolicy - -from .._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2021-06-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2021-06-01-preview") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.AsyncRedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.AsyncRetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = AsyncARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_service_bus_management_client.py deleted file mode 100644 index 56c07e40e9fb..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/_service_bus_management_client.py +++ /dev/null @@ -1,179 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, Awaitable, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.mgmt.core import AsyncARMPipelineClient -from azure.mgmt.core.policies import AsyncARMAutoResourceProviderRegistrationPolicy - -from .. import models as _models -from ..._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: - azure.mgmt.servicebus.v2021_06_01_preview.aio.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2021_06_01_preview.aio.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2021_06_01_preview.aio.operations.PrivateLinkResourcesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2021_06_01_preview.aio.operations.Operations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2021_06_01_preview.aio.operations.DisasterRecoveryConfigsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2021_06_01_preview.aio.operations.MigrationConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2021_06_01_preview.aio.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2021_06_01_preview.aio.operations.TopicsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2021_06_01_preview.aio.operations.RulesOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2021_06_01_preview.aio.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2021-06-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "AsyncTokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - AsyncARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.operations = Operations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.queues = QueuesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.topics = TopicsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.rules = RulesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-06-01-preview" - ) - - def _send_request( - self, request: HttpRequest, *, stream: bool = False, **kwargs: Any - ) -> Awaitable[AsyncHttpResponse]: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = await client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.AsyncHttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - async def close(self) -> None: - await self._client.close() - - async def __aenter__(self) -> Self: - await self._client.__aenter__() - return self - - async def __aexit__(self, *exc_details: Any) -> None: - await self._client.__aexit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/__init__.py deleted file mode 100644 index e5431803c533..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/__init__.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._operations import Operations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._rules_operations import RulesOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "Operations", - "DisasterRecoveryConfigsOperations", - "MigrationConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "RulesOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index 42f7fabb5bfa..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,981 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._disaster_recovery_configs_operations import ( - build_break_pairing_request, - build_check_name_availability_request, - build_create_or_update_request, - build_delete_request, - build_fail_over_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_keys_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.aio.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery or - IO[bytes] - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.ArmDisasterRecovery]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - if response.status_code == 200: - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.FailoverProperties or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_migration_configs_operations.py deleted file mode 100644 index 2aa338dd382c..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_migration_configs_operations.py +++ /dev/null @@ -1,631 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._migration_configs_operations import ( - build_complete_migration_request, - build_create_and_start_migration_request, - build_delete_request, - build_get_request, - build_list_request, - build_revert_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.aio.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties - or IO[bytes] - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_namespaces_operations.py deleted file mode 100644 index 5c1d20af9451..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_namespaces_operations.py +++ /dev/null @@ -1,1717 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._namespaces_operations import ( - build_check_name_availability_request, - build_create_or_update_authorization_rule_request, - build_create_or_update_network_rule_set_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_network_rule_set_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_resource_group_request, - build_list_keys_request, - build_list_network_rule_sets_request, - build_list_request, - build_regenerate_keys_request, - build_update_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.aio.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace or IO[bytes] - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> AsyncLROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespaceUpdateParameters - or IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_operations.py deleted file mode 100644 index 443935e00290..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_operations.py +++ /dev/null @@ -1,134 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._operations import build_list_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.aio.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index 07f900665507..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,491 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._private_endpoint_connections_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.aio.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - or IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncLROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_private_link_resources_operations.py deleted file mode 100644 index 2bdd22e84562..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,117 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._private_link_resources_operations import build_get_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.aio.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_queues_operations.py deleted file mode 100644 index b23f4638d023..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_queues_operations.py +++ /dev/null @@ -1,1067 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._queues_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.aio.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_rules_operations.py deleted file mode 100644 index c36f47f494e0..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_rules_operations.py +++ /dev/null @@ -1,476 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._rules_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_subscriptions_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.aio.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_subscriptions_operations.py deleted file mode 100644 index 581681230abe..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_subscriptions_operations.py +++ /dev/null @@ -1,462 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._subscriptions_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_topic_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.aio.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_topics_operations.py deleted file mode 100644 index db4faad8f15d..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/aio/operations/_topics_operations.py +++ /dev/null @@ -1,1076 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._topics_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.aio.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/__init__.py deleted file mode 100644 index 6cef0d97b01f..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/__init__.py +++ /dev/null @@ -1,161 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._models_py3 import AccessKeys -from ._models_py3 import Action -from ._models_py3 import ArmDisasterRecovery -from ._models_py3 import ArmDisasterRecoveryListResult -from ._models_py3 import CheckNameAvailability -from ._models_py3 import CheckNameAvailabilityResult -from ._models_py3 import ConnectionState -from ._models_py3 import CorrelationFilter -from ._models_py3 import Encryption -from ._models_py3 import ErrorAdditionalInfo -from ._models_py3 import ErrorResponse -from ._models_py3 import ErrorResponseError -from ._models_py3 import FailoverProperties -from ._models_py3 import Identity -from ._models_py3 import KeyVaultProperties -from ._models_py3 import MessageCountDetails -from ._models_py3 import MigrationConfigListResult -from ._models_py3 import MigrationConfigProperties -from ._models_py3 import NWRuleSetIpRules -from ._models_py3 import NWRuleSetVirtualNetworkRules -from ._models_py3 import NetworkRuleSet -from ._models_py3 import NetworkRuleSetListResult -from ._models_py3 import Operation -from ._models_py3 import OperationDisplay -from ._models_py3 import OperationListResult -from ._models_py3 import PrivateEndpoint -from ._models_py3 import PrivateEndpointConnection -from ._models_py3 import PrivateEndpointConnectionListResult -from ._models_py3 import PrivateLinkResource -from ._models_py3 import PrivateLinkResourcesListResult -from ._models_py3 import RegenerateAccessKeyParameters -from ._models_py3 import Resource -from ._models_py3 import ResourceNamespacePatch -from ._models_py3 import Rule -from ._models_py3 import RuleListResult -from ._models_py3 import SBAuthorizationRule -from ._models_py3 import SBAuthorizationRuleListResult -from ._models_py3 import SBClientAffineProperties -from ._models_py3 import SBNamespace -from ._models_py3 import SBNamespaceListResult -from ._models_py3 import SBNamespaceUpdateParameters -from ._models_py3 import SBQueue -from ._models_py3 import SBQueueListResult -from ._models_py3 import SBSku -from ._models_py3 import SBSubscription -from ._models_py3 import SBSubscriptionListResult -from ._models_py3 import SBTopic -from ._models_py3 import SBTopicListResult -from ._models_py3 import SqlFilter -from ._models_py3 import SqlRuleAction -from ._models_py3 import Subnet -from ._models_py3 import SystemData -from ._models_py3 import TrackedResource -from ._models_py3 import UserAssignedIdentity -from ._models_py3 import UserAssignedIdentityProperties - -from ._service_bus_management_client_enums import AccessRights -from ._service_bus_management_client_enums import CreatedByType -from ._service_bus_management_client_enums import DefaultAction -from ._service_bus_management_client_enums import EndPointProvisioningState -from ._service_bus_management_client_enums import EntityStatus -from ._service_bus_management_client_enums import FilterType -from ._service_bus_management_client_enums import KeyType -from ._service_bus_management_client_enums import ManagedServiceIdentityType -from ._service_bus_management_client_enums import MigrationConfigurationName -from ._service_bus_management_client_enums import NetworkRuleIPAction -from ._service_bus_management_client_enums import PrivateLinkConnectionStatus -from ._service_bus_management_client_enums import ProvisioningStateDR -from ._service_bus_management_client_enums import PublicNetworkAccessFlag -from ._service_bus_management_client_enums import RoleDisasterRecovery -from ._service_bus_management_client_enums import SkuName -from ._service_bus_management_client_enums import SkuTier -from ._service_bus_management_client_enums import UnavailableReason -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "AccessKeys", - "Action", - "ArmDisasterRecovery", - "ArmDisasterRecoveryListResult", - "CheckNameAvailability", - "CheckNameAvailabilityResult", - "ConnectionState", - "CorrelationFilter", - "Encryption", - "ErrorAdditionalInfo", - "ErrorResponse", - "ErrorResponseError", - "FailoverProperties", - "Identity", - "KeyVaultProperties", - "MessageCountDetails", - "MigrationConfigListResult", - "MigrationConfigProperties", - "NWRuleSetIpRules", - "NWRuleSetVirtualNetworkRules", - "NetworkRuleSet", - "NetworkRuleSetListResult", - "Operation", - "OperationDisplay", - "OperationListResult", - "PrivateEndpoint", - "PrivateEndpointConnection", - "PrivateEndpointConnectionListResult", - "PrivateLinkResource", - "PrivateLinkResourcesListResult", - "RegenerateAccessKeyParameters", - "Resource", - "ResourceNamespacePatch", - "Rule", - "RuleListResult", - "SBAuthorizationRule", - "SBAuthorizationRuleListResult", - "SBClientAffineProperties", - "SBNamespace", - "SBNamespaceListResult", - "SBNamespaceUpdateParameters", - "SBQueue", - "SBQueueListResult", - "SBSku", - "SBSubscription", - "SBSubscriptionListResult", - "SBTopic", - "SBTopicListResult", - "SqlFilter", - "SqlRuleAction", - "Subnet", - "SystemData", - "TrackedResource", - "UserAssignedIdentity", - "UserAssignedIdentityProperties", - "AccessRights", - "CreatedByType", - "DefaultAction", - "EndPointProvisioningState", - "EntityStatus", - "FilterType", - "KeyType", - "ManagedServiceIdentityType", - "MigrationConfigurationName", - "NetworkRuleIPAction", - "PrivateLinkConnectionStatus", - "ProvisioningStateDR", - "PublicNetworkAccessFlag", - "RoleDisasterRecovery", - "SkuName", - "SkuTier", - "UnavailableReason", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_models_py3.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_models_py3.py deleted file mode 100644 index 8328724df83f..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_models_py3.py +++ /dev/null @@ -1,2932 +0,0 @@ -# coding=utf-8 -# pylint: disable=too-many-lines -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -import datetime -from typing import Any, Dict, List, Literal, Optional, TYPE_CHECKING, Union - -from ... import _serialization - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from .. import models as _models - - -class AccessKeys(_serialization.Model): - """Namespace/ServiceBus Connection String. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar primary_connection_string: Primary connection string of the created namespace - authorization rule. - :vartype primary_connection_string: str - :ivar secondary_connection_string: Secondary connection string of the created namespace - authorization rule. - :vartype secondary_connection_string: str - :ivar alias_primary_connection_string: Primary connection string of the alias if GEO DR is - enabled. - :vartype alias_primary_connection_string: str - :ivar alias_secondary_connection_string: Secondary connection string of the alias if GEO DR is - enabled. - :vartype alias_secondary_connection_string: str - :ivar primary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype primary_key: str - :ivar secondary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype secondary_key: str - :ivar key_name: A string that describes the authorization rule. - :vartype key_name: str - """ - - _validation = { - "primary_connection_string": {"readonly": True}, - "secondary_connection_string": {"readonly": True}, - "alias_primary_connection_string": {"readonly": True}, - "alias_secondary_connection_string": {"readonly": True}, - "primary_key": {"readonly": True}, - "secondary_key": {"readonly": True}, - "key_name": {"readonly": True}, - } - - _attribute_map = { - "primary_connection_string": {"key": "primaryConnectionString", "type": "str"}, - "secondary_connection_string": {"key": "secondaryConnectionString", "type": "str"}, - "alias_primary_connection_string": {"key": "aliasPrimaryConnectionString", "type": "str"}, - "alias_secondary_connection_string": {"key": "aliasSecondaryConnectionString", "type": "str"}, - "primary_key": {"key": "primaryKey", "type": "str"}, - "secondary_key": {"key": "secondaryKey", "type": "str"}, - "key_name": {"key": "keyName", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.primary_connection_string = None - self.secondary_connection_string = None - self.alias_primary_connection_string = None - self.alias_secondary_connection_string = None - self.primary_key = None - self.secondary_key = None - self.key_name = None - - -class Action(_serialization.Model): - """Represents the filter actions which are allowed for the transformation of a message that have - been matched by a filter expression. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: Optional[int] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class Resource(_serialization.Model): - """The Resource definition for other than namespace. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id = None - self.name = None - self.type = None - - -class ArmDisasterRecovery(Resource): - """Single item in List or Get Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SystemData - :ivar provisioning_state: Provisioning state of the Alias(Disaster Recovery configuration) - - possible values 'Accepted' or 'Succeeded' or 'Failed'. Known values are: "Accepted", - "Succeeded", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.ProvisioningStateDR - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is part - of GEO DR pairing. - :vartype partner_namespace: str - :ivar alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :vartype alternate_name: str - :ivar role: role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' - or 'Secondary'. Known values are: "Primary", "PrimaryNotReplicating", and "Secondary". - :vartype role: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.RoleDisasterRecovery - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "role": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "partner_namespace": {"key": "properties.partnerNamespace", "type": "str"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - "role": {"key": "properties.role", "type": "str"}, - } - - def __init__( - self, *, partner_namespace: Optional[str] = None, alternate_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is - part of GEO DR pairing. - :paramtype partner_namespace: str - :keyword alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :paramtype alternate_name: str - """ - super().__init__(**kwargs) - self.system_data = None - self.provisioning_state = None - self.pending_replication_operations_count = None - self.partner_namespace = partner_namespace - self.alternate_name = alternate_name - self.role = None - - -class ArmDisasterRecoveryListResult(_serialization.Model): - """The result of the List Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Alias(Disaster Recovery configurations). - :vartype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Alias(Disaster Recovery configuration). - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[ArmDisasterRecovery]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.ArmDisasterRecovery"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Alias(Disaster Recovery configurations). - :paramtype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class CheckNameAvailability(_serialization.Model): - """Description of a Check Name availability request properties. - - All required parameters must be populated in order to send to server. - - :ivar name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :vartype name: str - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - } - - def __init__(self, *, name: str, **kwargs: Any) -> None: - """ - :keyword name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :paramtype name: str - """ - super().__init__(**kwargs) - self.name = name - - -class CheckNameAvailabilityResult(_serialization.Model): - """Description of a Check Name availability request properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar message: The detailed info regarding the reason associated with the namespace. - :vartype message: str - :ivar name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :vartype name_available: bool - :ivar reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :vartype reason: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.UnavailableReason - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "message": {"key": "message", "type": "str"}, - "name_available": {"key": "nameAvailable", "type": "bool"}, - "reason": {"key": "reason", "type": "str"}, - } - - def __init__( - self, - *, - name_available: Optional[bool] = None, - reason: Optional[Union[str, "_models.UnavailableReason"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :paramtype name_available: bool - :keyword reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :paramtype reason: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.UnavailableReason - """ - super().__init__(**kwargs) - self.message = None - self.name_available = name_available - self.reason = reason - - -class ConnectionState(_serialization.Model): - """ConnectionState information. - - :ivar status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :vartype status: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateLinkConnectionStatus - :ivar description: Description of the connection state. - :vartype description: str - """ - - _attribute_map = { - "status": {"key": "status", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__( - self, - *, - status: Optional[Union[str, "_models.PrivateLinkConnectionStatus"]] = None, - description: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :paramtype status: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateLinkConnectionStatus - :keyword description: Description of the connection state. - :paramtype description: str - """ - super().__init__(**kwargs) - self.status = status - self.description = description - - -class CorrelationFilter(_serialization.Model): - """Represents the correlation filter expression. - - :ivar properties: dictionary object for custom filters. - :vartype properties: dict[str, str] - :ivar correlation_id: Identifier of the correlation. - :vartype correlation_id: str - :ivar message_id: Identifier of the message. - :vartype message_id: str - :ivar to: Address to send to. - :vartype to: str - :ivar reply_to: Address of the queue to reply to. - :vartype reply_to: str - :ivar label: Application specific label. - :vartype label: str - :ivar session_id: Session identifier. - :vartype session_id: str - :ivar reply_to_session_id: Session identifier to reply to. - :vartype reply_to_session_id: str - :ivar content_type: Content type of the message. - :vartype content_type: str - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "properties": {"key": "properties", "type": "{str}"}, - "correlation_id": {"key": "correlationId", "type": "str"}, - "message_id": {"key": "messageId", "type": "str"}, - "to": {"key": "to", "type": "str"}, - "reply_to": {"key": "replyTo", "type": "str"}, - "label": {"key": "label", "type": "str"}, - "session_id": {"key": "sessionId", "type": "str"}, - "reply_to_session_id": {"key": "replyToSessionId", "type": "str"}, - "content_type": {"key": "contentType", "type": "str"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - properties: Optional[Dict[str, str]] = None, - correlation_id: Optional[str] = None, - message_id: Optional[str] = None, - to: Optional[str] = None, - reply_to: Optional[str] = None, - label: Optional[str] = None, - session_id: Optional[str] = None, - reply_to_session_id: Optional[str] = None, - content_type: Optional[str] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword properties: dictionary object for custom filters. - :paramtype properties: dict[str, str] - :keyword correlation_id: Identifier of the correlation. - :paramtype correlation_id: str - :keyword message_id: Identifier of the message. - :paramtype message_id: str - :keyword to: Address to send to. - :paramtype to: str - :keyword reply_to: Address of the queue to reply to. - :paramtype reply_to: str - :keyword label: Application specific label. - :paramtype label: str - :keyword session_id: Session identifier. - :paramtype session_id: str - :keyword reply_to_session_id: Session identifier to reply to. - :paramtype reply_to_session_id: str - :keyword content_type: Content type of the message. - :paramtype content_type: str - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.properties = properties - self.correlation_id = correlation_id - self.message_id = message_id - self.to = to - self.reply_to = reply_to - self.label = label - self.session_id = session_id - self.reply_to_session_id = reply_to_session_id - self.content_type = content_type - self.requires_preprocessing = requires_preprocessing - - -class Encryption(_serialization.Model): - """Properties to configure Encryption. - - :ivar key_vault_properties: Properties of KeyVault. - :vartype key_vault_properties: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.KeyVaultProperties] - :ivar key_source: Enumerates the possible value of keySource for Encryption. Default value is - "Microsoft.KeyVault". - :vartype key_source: str - :ivar require_infrastructure_encryption: Enable Infrastructure Encryption (Double Encryption). - :vartype require_infrastructure_encryption: bool - """ - - _attribute_map = { - "key_vault_properties": {"key": "keyVaultProperties", "type": "[KeyVaultProperties]"}, - "key_source": {"key": "keySource", "type": "str"}, - "require_infrastructure_encryption": {"key": "requireInfrastructureEncryption", "type": "bool"}, - } - - def __init__( - self, - *, - key_vault_properties: Optional[List["_models.KeyVaultProperties"]] = None, - key_source: Literal["Microsoft.KeyVault"] = "Microsoft.KeyVault", - require_infrastructure_encryption: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword key_vault_properties: Properties of KeyVault. - :paramtype key_vault_properties: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.KeyVaultProperties] - :keyword key_source: Enumerates the possible value of keySource for Encryption. Default value - is "Microsoft.KeyVault". - :paramtype key_source: str - :keyword require_infrastructure_encryption: Enable Infrastructure Encryption (Double - Encryption). - :paramtype require_infrastructure_encryption: bool - """ - super().__init__(**kwargs) - self.key_vault_properties = key_vault_properties - self.key_source = key_source - self.require_infrastructure_encryption = require_infrastructure_encryption - - -class ErrorAdditionalInfo(_serialization.Model): - """The resource management error additional info. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar type: The additional info type. - :vartype type: str - :ivar info: The additional info. - :vartype info: JSON - """ - - _validation = { - "type": {"readonly": True}, - "info": {"readonly": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "info": {"key": "info", "type": "object"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.type = None - self.info = None - - -class ErrorResponse(_serialization.Model): - """The resource management error response. - - :ivar error: The error object. - :vartype error: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ErrorResponseError - """ - - _attribute_map = { - "error": {"key": "error", "type": "ErrorResponseError"}, - } - - def __init__(self, *, error: Optional["_models.ErrorResponseError"] = None, **kwargs: Any) -> None: - """ - :keyword error: The error object. - :paramtype error: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ErrorResponseError - """ - super().__init__(**kwargs) - self.error = error - - -class ErrorResponseError(_serialization.Model): - """The error object. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.ErrorResponse] - :ivar additional_info: The error additional info. - :vartype additional_info: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[ErrorResponse]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code = None - self.message = None - self.target = None - self.details = None - self.additional_info = None - - -class FailoverProperties(_serialization.Model): - """Safe failover is to indicate the service should wait for pending replication to finish before - switching to the secondary. - - :ivar is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :vartype is_safe_failover: bool - """ - - _attribute_map = { - "is_safe_failover": {"key": "properties.IsSafeFailover", "type": "bool"}, - } - - def __init__(self, *, is_safe_failover: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :paramtype is_safe_failover: bool - """ - super().__init__(**kwargs) - self.is_safe_failover = is_safe_failover - - -class Identity(_serialization.Model): - """Properties to configure User Assigned Identities for Bring your Own Keys. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar principal_id: ObjectId from the KeyVault. - :vartype principal_id: str - :ivar tenant_id: TenantId from the KeyVault. - :vartype tenant_id: str - :ivar type: Type of managed service identity. Known values are: "SystemAssigned", - "UserAssigned", "SystemAssigned, UserAssigned", and "None". - :vartype type: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.ManagedServiceIdentityType - :ivar user_assigned_identities: Properties for User Assigned Identities. - :vartype user_assigned_identities: dict[str, - ~azure.mgmt.servicebus.v2021_06_01_preview.models.UserAssignedIdentity] - """ - - _validation = { - "principal_id": {"readonly": True}, - "tenant_id": {"readonly": True}, - } - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "tenant_id": {"key": "tenantId", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "user_assigned_identities": {"key": "userAssignedIdentities", "type": "{UserAssignedIdentity}"}, - } - - def __init__( - self, - *, - type: Optional[Union[str, "_models.ManagedServiceIdentityType"]] = None, - user_assigned_identities: Optional[Dict[str, "_models.UserAssignedIdentity"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword type: Type of managed service identity. Known values are: "SystemAssigned", - "UserAssigned", "SystemAssigned, UserAssigned", and "None". - :paramtype type: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.ManagedServiceIdentityType - :keyword user_assigned_identities: Properties for User Assigned Identities. - :paramtype user_assigned_identities: dict[str, - ~azure.mgmt.servicebus.v2021_06_01_preview.models.UserAssignedIdentity] - """ - super().__init__(**kwargs) - self.principal_id = None - self.tenant_id = None - self.type = type - self.user_assigned_identities = user_assigned_identities - - -class KeyVaultProperties(_serialization.Model): - """Properties to configure keyVault Properties. - - :ivar key_name: Name of the Key from KeyVault. - :vartype key_name: str - :ivar key_vault_uri: Uri of KeyVault. - :vartype key_vault_uri: str - :ivar key_version: Version of KeyVault. - :vartype key_version: str - :ivar identity: - :vartype identity: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.UserAssignedIdentityProperties - """ - - _attribute_map = { - "key_name": {"key": "keyName", "type": "str"}, - "key_vault_uri": {"key": "keyVaultUri", "type": "str"}, - "key_version": {"key": "keyVersion", "type": "str"}, - "identity": {"key": "identity", "type": "UserAssignedIdentityProperties"}, - } - - def __init__( - self, - *, - key_name: Optional[str] = None, - key_vault_uri: Optional[str] = None, - key_version: Optional[str] = None, - identity: Optional["_models.UserAssignedIdentityProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword key_name: Name of the Key from KeyVault. - :paramtype key_name: str - :keyword key_vault_uri: Uri of KeyVault. - :paramtype key_vault_uri: str - :keyword key_version: Version of KeyVault. - :paramtype key_version: str - :keyword identity: - :paramtype identity: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.UserAssignedIdentityProperties - """ - super().__init__(**kwargs) - self.key_name = key_name - self.key_vault_uri = key_vault_uri - self.key_version = key_version - self.identity = identity - - -class MessageCountDetails(_serialization.Model): - """Message Count Details. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar active_message_count: Number of active messages in the queue, topic, or subscription. - :vartype active_message_count: int - :ivar dead_letter_message_count: Number of messages that are dead lettered. - :vartype dead_letter_message_count: int - :ivar scheduled_message_count: Number of scheduled messages. - :vartype scheduled_message_count: int - :ivar transfer_message_count: Number of messages transferred to another queue, topic, or - subscription. - :vartype transfer_message_count: int - :ivar transfer_dead_letter_message_count: Number of messages transferred into dead letters. - :vartype transfer_dead_letter_message_count: int - """ - - _validation = { - "active_message_count": {"readonly": True}, - "dead_letter_message_count": {"readonly": True}, - "scheduled_message_count": {"readonly": True}, - "transfer_message_count": {"readonly": True}, - "transfer_dead_letter_message_count": {"readonly": True}, - } - - _attribute_map = { - "active_message_count": {"key": "activeMessageCount", "type": "int"}, - "dead_letter_message_count": {"key": "deadLetterMessageCount", "type": "int"}, - "scheduled_message_count": {"key": "scheduledMessageCount", "type": "int"}, - "transfer_message_count": {"key": "transferMessageCount", "type": "int"}, - "transfer_dead_letter_message_count": {"key": "transferDeadLetterMessageCount", "type": "int"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.active_message_count = None - self.dead_letter_message_count = None - self.scheduled_message_count = None - self.transfer_message_count = None - self.transfer_dead_letter_message_count = None - - -class MigrationConfigListResult(_serialization.Model): - """The result of the List migrationConfigurations operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Migration Configs. - :vartype value: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of migrationConfigurations. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[MigrationConfigProperties]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.MigrationConfigProperties"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Migration Configs. - :paramtype value: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class MigrationConfigProperties(Resource): - """Single item in List or Get Migration Config operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SystemData - :ivar provisioning_state: Provisioning state of Migration Configuration. - :vartype provisioning_state: str - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar target_namespace: Existing premium Namespace ARM Id name which has no entities, will be - used for migration. - :vartype target_namespace: str - :ivar post_migration_name: Name to access Standard Namespace after migration. - :vartype post_migration_name: str - :ivar migration_state: State in which Standard to Premium Migration is, possible values : - Unknown, Reverting, Completing, Initiating, Syncing, Active. - :vartype migration_state: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "migration_state": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "target_namespace": {"key": "properties.targetNamespace", "type": "str"}, - "post_migration_name": {"key": "properties.postMigrationName", "type": "str"}, - "migration_state": {"key": "properties.migrationState", "type": "str"}, - } - - def __init__( - self, *, target_namespace: Optional[str] = None, post_migration_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword target_namespace: Existing premium Namespace ARM Id name which has no entities, will - be used for migration. - :paramtype target_namespace: str - :keyword post_migration_name: Name to access Standard Namespace after migration. - :paramtype post_migration_name: str - """ - super().__init__(**kwargs) - self.system_data = None - self.provisioning_state = None - self.pending_replication_operations_count = None - self.target_namespace = target_namespace - self.post_migration_name = post_migration_name - self.migration_state = None - - -class NetworkRuleSet(Resource): - """Description of NetworkRuleSet resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SystemData - :ivar trusted_service_access_enabled: Value that indicates whether Trusted Service Access is - Enabled or not. - :vartype trusted_service_access_enabled: bool - :ivar default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :vartype default_action: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.DefaultAction - :ivar virtual_network_rules: List VirtualNetwork Rules. - :vartype virtual_network_rules: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.NWRuleSetVirtualNetworkRules] - :ivar ip_rules: List of IpRules. - :vartype ip_rules: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.NWRuleSetIpRules] - :ivar public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled" and "Disabled". - :vartype public_network_access: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.PublicNetworkAccessFlag - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "trusted_service_access_enabled": {"key": "properties.trustedServiceAccessEnabled", "type": "bool"}, - "default_action": {"key": "properties.defaultAction", "type": "str"}, - "virtual_network_rules": {"key": "properties.virtualNetworkRules", "type": "[NWRuleSetVirtualNetworkRules]"}, - "ip_rules": {"key": "properties.ipRules", "type": "[NWRuleSetIpRules]"}, - "public_network_access": {"key": "properties.publicNetworkAccess", "type": "str"}, - } - - def __init__( - self, - *, - trusted_service_access_enabled: Optional[bool] = None, - default_action: Optional[Union[str, "_models.DefaultAction"]] = None, - virtual_network_rules: Optional[List["_models.NWRuleSetVirtualNetworkRules"]] = None, - ip_rules: Optional[List["_models.NWRuleSetIpRules"]] = None, - public_network_access: Union[str, "_models.PublicNetworkAccessFlag"] = "Enabled", - **kwargs: Any - ) -> None: - """ - :keyword trusted_service_access_enabled: Value that indicates whether Trusted Service Access is - Enabled or not. - :paramtype trusted_service_access_enabled: bool - :keyword default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :paramtype default_action: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.DefaultAction - :keyword virtual_network_rules: List VirtualNetwork Rules. - :paramtype virtual_network_rules: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.NWRuleSetVirtualNetworkRules] - :keyword ip_rules: List of IpRules. - :paramtype ip_rules: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.NWRuleSetIpRules] - :keyword public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled" and "Disabled". - :paramtype public_network_access: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.PublicNetworkAccessFlag - """ - super().__init__(**kwargs) - self.system_data = None - self.trusted_service_access_enabled = trusted_service_access_enabled - self.default_action = default_action - self.virtual_network_rules = virtual_network_rules - self.ip_rules = ip_rules - self.public_network_access = public_network_access - - -class NetworkRuleSetListResult(_serialization.Model): - """The response of the List NetworkRuleSet operation. - - :ivar value: Result of the List NetworkRuleSet operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of NetworkRuleSet. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[NetworkRuleSet]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.NetworkRuleSet"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List NetworkRuleSet operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of NetworkRuleSet. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class NWRuleSetIpRules(_serialization.Model): - """Description of NetWorkRuleSet - IpRules resource. - - :ivar ip_mask: IP Mask. - :vartype ip_mask: str - :ivar action: The IP Filter Action. "Allow" - :vartype action: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleIPAction - """ - - _attribute_map = { - "ip_mask": {"key": "ipMask", "type": "str"}, - "action": {"key": "action", "type": "str"}, - } - - def __init__( - self, - *, - ip_mask: Optional[str] = None, - action: Union[str, "_models.NetworkRuleIPAction"] = "Allow", - **kwargs: Any - ) -> None: - """ - :keyword ip_mask: IP Mask. - :paramtype ip_mask: str - :keyword action: The IP Filter Action. "Allow" - :paramtype action: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleIPAction - """ - super().__init__(**kwargs) - self.ip_mask = ip_mask - self.action = action - - -class NWRuleSetVirtualNetworkRules(_serialization.Model): - """Description of VirtualNetworkRules - NetworkRules resource. - - :ivar subnet: Subnet properties. - :vartype subnet: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Subnet - :ivar ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing VNet - Service Endpoint. - :vartype ignore_missing_vnet_service_endpoint: bool - """ - - _attribute_map = { - "subnet": {"key": "subnet", "type": "Subnet"}, - "ignore_missing_vnet_service_endpoint": {"key": "ignoreMissingVnetServiceEndpoint", "type": "bool"}, - } - - def __init__( - self, - *, - subnet: Optional["_models.Subnet"] = None, - ignore_missing_vnet_service_endpoint: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword subnet: Subnet properties. - :paramtype subnet: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Subnet - :keyword ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing - VNet Service Endpoint. - :paramtype ignore_missing_vnet_service_endpoint: bool - """ - super().__init__(**kwargs) - self.subnet = subnet - self.ignore_missing_vnet_service_endpoint = ignore_missing_vnet_service_endpoint - - -class Operation(_serialization.Model): - """A ServiceBus REST API operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar name: Operation name: {provider}/{resource}/{operation}. - :vartype name: str - :ivar display: The object that represents the operation. - :vartype display: ~azure.mgmt.servicebus.v2021_06_01_preview.models.OperationDisplay - """ - - _validation = { - "name": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "display": {"key": "display", "type": "OperationDisplay"}, - } - - def __init__(self, *, display: Optional["_models.OperationDisplay"] = None, **kwargs: Any) -> None: - """ - :keyword display: The object that represents the operation. - :paramtype display: ~azure.mgmt.servicebus.v2021_06_01_preview.models.OperationDisplay - """ - super().__init__(**kwargs) - self.name = None - self.display = display - - -class OperationDisplay(_serialization.Model): - """The object that represents the operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provider: Service provider: Microsoft.ServiceBus. - :vartype provider: str - :ivar resource: Resource on which the operation is performed: Invoice, etc. - :vartype resource: str - :ivar operation: Operation type: Read, write, delete, etc. - :vartype operation: str - """ - - _validation = { - "provider": {"readonly": True}, - "resource": {"readonly": True}, - "operation": {"readonly": True}, - } - - _attribute_map = { - "provider": {"key": "provider", "type": "str"}, - "resource": {"key": "resource", "type": "str"}, - "operation": {"key": "operation", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.provider = None - self.resource = None - self.operation = None - - -class OperationListResult(_serialization.Model): - """Result of the request to list ServiceBus operations. It contains a list of operations and a URL - link to get the next set of results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of ServiceBus operations supported by the Microsoft.ServiceBus resource - provider. - :vartype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.Operation] - :ivar next_link: URL to get the next set of operation list results if there are any. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Operation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value = None - self.next_link = None - - -class PrivateEndpoint(_serialization.Model): - """PrivateEndpoint information. - - :ivar id: The ARM identifier for Private Endpoint. - :vartype id: str - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: The ARM identifier for Private Endpoint. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class PrivateEndpointConnection(Resource): - """Properties of the PrivateEndpointConnection. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SystemData - :ivar private_endpoint: The Private Endpoint resource for this Connection. - :vartype private_endpoint: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpoint - :ivar private_link_service_connection_state: Details about the state of the connection. - :vartype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.ConnectionState - :ivar provisioning_state: Provisioning state of the Private Endpoint Connection. Known values - are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.EndPointProvisioningState - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "private_endpoint": {"key": "properties.privateEndpoint", "type": "PrivateEndpoint"}, - "private_link_service_connection_state": { - "key": "properties.privateLinkServiceConnectionState", - "type": "ConnectionState", - }, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - } - - def __init__( - self, - *, - private_endpoint: Optional["_models.PrivateEndpoint"] = None, - private_link_service_connection_state: Optional["_models.ConnectionState"] = None, - provisioning_state: Optional[Union[str, "_models.EndPointProvisioningState"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword private_endpoint: The Private Endpoint resource for this Connection. - :paramtype private_endpoint: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpoint - :keyword private_link_service_connection_state: Details about the state of the connection. - :paramtype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.ConnectionState - :keyword provisioning_state: Provisioning state of the Private Endpoint Connection. Known - values are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :paramtype provisioning_state: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.EndPointProvisioningState - """ - super().__init__(**kwargs) - self.system_data = None - self.private_endpoint = private_endpoint - self.private_link_service_connection_state = private_link_service_connection_state - self.provisioning_state = provisioning_state - - -class PrivateEndpointConnectionListResult(_serialization.Model): - """Result of the list of all private endpoint connections operation. - - :ivar value: A collection of private endpoint connection resources. - :vartype value: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection] - :ivar next_link: A link for the next page of private endpoint connection resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateEndpointConnection]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateEndpointConnection"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private endpoint connection resources. - :paramtype value: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection] - :keyword next_link: A link for the next page of private endpoint connection resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class PrivateLinkResource(_serialization.Model): - """Information of the private link resource. - - :ivar id: Fully qualified identifier of the resource. - :vartype id: str - :ivar name: Name of the resource. - :vartype name: str - :ivar type: Type of the resource. - :vartype type: str - :ivar group_id: - :vartype group_id: str - :ivar required_members: Required Members. - :vartype required_members: list[str] - :ivar required_zone_names: Required Zone Names. - :vartype required_zone_names: list[str] - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "group_id": {"key": "properties.groupId", "type": "str"}, - "required_members": {"key": "properties.requiredMembers", "type": "[str]"}, - "required_zone_names": {"key": "properties.requiredZoneNames", "type": "[str]"}, - } - - def __init__( - self, - *, - id: Optional[str] = None, # pylint: disable=redefined-builtin - name: Optional[str] = None, - type: Optional[str] = None, - group_id: Optional[str] = None, - required_members: Optional[List[str]] = None, - required_zone_names: Optional[List[str]] = None, - **kwargs: Any - ) -> None: - """ - :keyword id: Fully qualified identifier of the resource. - :paramtype id: str - :keyword name: Name of the resource. - :paramtype name: str - :keyword type: Type of the resource. - :paramtype type: str - :keyword group_id: - :paramtype group_id: str - :keyword required_members: Required Members. - :paramtype required_members: list[str] - :keyword required_zone_names: Required Zone Names. - :paramtype required_zone_names: list[str] - """ - super().__init__(**kwargs) - self.id = id - self.name = name - self.type = type - self.group_id = group_id - self.required_members = required_members - self.required_zone_names = required_zone_names - - -class PrivateLinkResourcesListResult(_serialization.Model): - """Result of the List private link resources operation. - - :ivar value: A collection of private link resources. - :vartype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateLinkResource] - :ivar next_link: A link for the next page of private link resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateLinkResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateLinkResource"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private link resources. - :paramtype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateLinkResource] - :keyword next_link: A link for the next page of private link resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class RegenerateAccessKeyParameters(_serialization.Model): - """Parameters supplied to the Regenerate Authorization Rule operation, specifies which key needs - to be reset. - - All required parameters must be populated in order to send to server. - - :ivar key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :vartype key_type: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.KeyType - :ivar key: Optional, if the key value provided, is reset for KeyType value or autogenerate Key - value set for keyType. - :vartype key: str - """ - - _validation = { - "key_type": {"required": True}, - } - - _attribute_map = { - "key_type": {"key": "keyType", "type": "str"}, - "key": {"key": "key", "type": "str"}, - } - - def __init__(self, *, key_type: Union[str, "_models.KeyType"], key: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :paramtype key_type: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.KeyType - :keyword key: Optional, if the key value provided, is reset for KeyType value or autogenerate - Key value set for keyType. - :paramtype key: str - """ - super().__init__(**kwargs) - self.key_type = key_type - self.key = key - - -class ResourceNamespacePatch(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: Optional[str] = None, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class Rule(Resource): - """Description of Rule Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SystemData - :ivar action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :vartype action: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Action - :ivar filter_type: Filter type that is evaluated against a BrokeredMessage. Known values are: - "SqlFilter" and "CorrelationFilter". - :vartype filter_type: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.FilterType - :ivar sql_filter: Properties of sqlFilter. - :vartype sql_filter: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SqlFilter - :ivar correlation_filter: Properties of correlationFilter. - :vartype correlation_filter: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.CorrelationFilter - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "action": {"key": "properties.action", "type": "Action"}, - "filter_type": {"key": "properties.filterType", "type": "str"}, - "sql_filter": {"key": "properties.sqlFilter", "type": "SqlFilter"}, - "correlation_filter": {"key": "properties.correlationFilter", "type": "CorrelationFilter"}, - } - - def __init__( - self, - *, - action: Optional["_models.Action"] = None, - filter_type: Optional[Union[str, "_models.FilterType"]] = None, - sql_filter: Optional["_models.SqlFilter"] = None, - correlation_filter: Optional["_models.CorrelationFilter"] = None, - **kwargs: Any - ) -> None: - """ - :keyword action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :paramtype action: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Action - :keyword filter_type: Filter type that is evaluated against a BrokeredMessage. Known values - are: "SqlFilter" and "CorrelationFilter". - :paramtype filter_type: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.FilterType - :keyword sql_filter: Properties of sqlFilter. - :paramtype sql_filter: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SqlFilter - :keyword correlation_filter: Properties of correlationFilter. - :paramtype correlation_filter: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.CorrelationFilter - """ - super().__init__(**kwargs) - self.system_data = None - self.action = action - self.filter_type = filter_type - self.sql_filter = sql_filter - self.correlation_filter = correlation_filter - - -class RuleListResult(_serialization.Model): - """The response of the List rule operation. - - :ivar value: Result of the List Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[Rule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.Rule"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBAuthorizationRule(Resource): - """Description of a namespace authorization rule. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SystemData - :ivar rights: The rights associated with the rule. - :vartype rights: list[str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessRights] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "rights": {"key": "properties.rights", "type": "[str]"}, - } - - def __init__(self, *, rights: Optional[List[Union[str, "_models.AccessRights"]]] = None, **kwargs: Any) -> None: - """ - :keyword rights: The rights associated with the rule. - :paramtype rights: list[str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessRights] - """ - super().__init__(**kwargs) - self.system_data = None - self.rights = rights - - -class SBAuthorizationRuleListResult(_serialization.Model): - """The response to the List Namespace operation. - - :ivar value: Result of the List Authorization Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Authorization Rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBAuthorizationRule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.SBAuthorizationRule"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Authorization Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Authorization Rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBClientAffineProperties(_serialization.Model): - """Properties specific to client affine subscriptions. - - :ivar client_id: Indicates the Client ID of the application that created the client-affine - subscription. - :vartype client_id: str - :ivar is_durable: For client-affine subscriptions, this value indicates whether the - subscription is durable or not. - :vartype is_durable: bool - :ivar is_shared: For client-affine subscriptions, this value indicates whether the subscription - is shared or not. - :vartype is_shared: bool - """ - - _attribute_map = { - "client_id": {"key": "clientId", "type": "str"}, - "is_durable": {"key": "isDurable", "type": "bool"}, - "is_shared": {"key": "isShared", "type": "bool"}, - } - - def __init__( - self, - *, - client_id: Optional[str] = None, - is_durable: Optional[bool] = None, - is_shared: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword client_id: Indicates the Client ID of the application that created the client-affine - subscription. - :paramtype client_id: str - :keyword is_durable: For client-affine subscriptions, this value indicates whether the - subscription is durable or not. - :paramtype is_durable: bool - :keyword is_shared: For client-affine subscriptions, this value indicates whether the - subscription is shared or not. - :paramtype is_shared: bool - """ - super().__init__(**kwargs) - self.client_id = client_id - self.is_durable = is_durable - self.is_shared = is_shared - - -class TrackedResource(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class SBNamespace(TrackedResource): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Identity - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SystemData - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar zone_redundant: Enabling this property creates a Premium Service Bus Namespace in regions - supported availability zones. - :vartype zone_redundant: bool - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Encryption - :ivar private_endpoint_connections: List of private endpoint connections. - :vartype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection] - :ivar disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :vartype disable_local_auth: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "zone_redundant": {"key": "properties.zoneRedundant", "type": "bool"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - "private_endpoint_connections": { - "key": "properties.privateEndpointConnections", - "type": "[PrivateEndpointConnection]", - }, - "disable_local_auth": {"key": "properties.disableLocalAuth", "type": "bool"}, - } - - def __init__( - self, - *, - location: str, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - zone_redundant: Optional[bool] = None, - encryption: Optional["_models.Encryption"] = None, - private_endpoint_connections: Optional[List["_models.PrivateEndpointConnection"]] = None, - disable_local_auth: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Identity - :keyword zone_redundant: Enabling this property creates a Premium Service Bus Namespace in - regions supported availability zones. - :paramtype zone_redundant: bool - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Encryption - :keyword private_endpoint_connections: List of private endpoint connections. - :paramtype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection] - :keyword disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :paramtype disable_local_auth: bool - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.system_data = None - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.zone_redundant = zone_redundant - self.encryption = encryption - self.private_endpoint_connections = private_endpoint_connections - self.disable_local_auth = disable_local_auth - - -class SBNamespaceListResult(_serialization.Model): - """The response of the List Namespace operation. - - :ivar value: Result of the List Namespace operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Namespaces. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBNamespace]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBNamespace"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Namespace operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Namespaces. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBNamespaceUpdateParameters(ResourceNamespacePatch): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Identity - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar zone_redundant: Enabling this property creates a Premium Service Bus Namespace in regions - supported availability zones. - :vartype zone_redundant: bool - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Encryption - :ivar private_endpoint_connections: List of private endpoint connections. - :vartype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection] - :ivar disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :vartype disable_local_auth: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "zone_redundant": {"key": "properties.zoneRedundant", "type": "bool"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - "private_endpoint_connections": { - "key": "properties.privateEndpointConnections", - "type": "[PrivateEndpointConnection]", - }, - "disable_local_auth": {"key": "properties.disableLocalAuth", "type": "bool"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - zone_redundant: Optional[bool] = None, - encryption: Optional["_models.Encryption"] = None, - private_endpoint_connections: Optional[List["_models.PrivateEndpointConnection"]] = None, - disable_local_auth: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Identity - :keyword zone_redundant: Enabling this property creates a Premium Service Bus Namespace in - regions supported availability zones. - :paramtype zone_redundant: bool - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Encryption - :keyword private_endpoint_connections: List of private endpoint connections. - :paramtype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection] - :keyword disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :paramtype disable_local_auth: bool - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.zone_redundant = zone_redundant - self.encryption = encryption - self.private_endpoint_connections = private_endpoint_connections - self.disable_local_auth = disable_local_auth - - -class SBQueue(Resource): # pylint: disable=too-many-instance-attributes - """Description of queue Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SystemData - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2021_06_01_preview.models.MessageCountDetails - :ivar created_at: The exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time a message was sent, or the last time there was a receive request - to this queue. - :vartype accessed_at: ~datetime.datetime - :ivar size_in_bytes: The size of the queue, in bytes. - :vartype size_in_bytes: int - :ivar message_count: The number of messages in the queue. - :vartype message_count: int - :ivar lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size of - memory allocated for the queue. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the queue. This property is only used in Premium today and default is 1024. - :vartype max_message_size_in_kilobytes: int - :ivar requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar requires_session: A value that indicates whether the queue supports the concept of - sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_message_expiration: A value that indicates whether this queue has dead - letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: The maximum delivery count. A message is automatically deadlettered - after this number of deliveries. default value is 10. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: A value that indicates whether the queue is to be partitioned across - multiple message brokers. - :vartype enable_partitioning: bool - :ivar enable_express: A value that indicates whether Express Entities are enabled. An express - queue holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "count_details": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "message_count": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "max_message_size_in_kilobytes": {"key": "properties.maxMessageSizeInKilobytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - max_message_size_in_kilobytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size - of memory allocated for the queue. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the queue. This property is only used in Premium today and default is 1024. - :paramtype max_message_size_in_kilobytes: int - :keyword requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword requires_session: A value that indicates whether the queue supports the concept of - sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_message_expiration: A value that indicates whether this queue has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: The maximum delivery count. A message is automatically - deadlettered after this number of deliveries. default value is 10. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: A value that indicates whether the queue is to be partitioned - across multiple message brokers. - :paramtype enable_partitioning: bool - :keyword enable_express: A value that indicates whether Express Entities are enabled. An - express queue holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - """ - super().__init__(**kwargs) - self.system_data = None - self.count_details = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.size_in_bytes = None - self.message_count = None - self.lock_duration = lock_duration - self.max_size_in_megabytes = max_size_in_megabytes - self.max_message_size_in_kilobytes = max_message_size_in_kilobytes - self.requires_duplicate_detection = requires_duplicate_detection - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - - -class SBQueueListResult(_serialization.Model): - """The response to the List Queues operation. - - :ivar value: Result of the List Queues operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of queues. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBQueue]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBQueue"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Queues operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of queues. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBSku(_serialization.Model): - """SKU of the namespace. - - All required parameters must be populated in order to send to server. - - :ivar name: Name of this SKU. Required. Known values are: "Basic", "Standard", and "Premium". - :vartype name: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.SkuName - :ivar tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", and - "Premium". - :vartype tier: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.SkuTier - :ivar capacity: The specified messaging units for the tier. For Premium tier, capacity are 1,2 - and 4. - :vartype capacity: int - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "tier": {"key": "tier", "type": "str"}, - "capacity": {"key": "capacity", "type": "int"}, - } - - def __init__( - self, - *, - name: Union[str, "_models.SkuName"], - tier: Optional[Union[str, "_models.SkuTier"]] = None, - capacity: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Name of this SKU. Required. Known values are: "Basic", "Standard", and - "Premium". - :paramtype name: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.SkuName - :keyword tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", - and "Premium". - :paramtype tier: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.SkuTier - :keyword capacity: The specified messaging units for the tier. For Premium tier, capacity are - 1,2 and 4. - :paramtype capacity: int - """ - super().__init__(**kwargs) - self.name = name - self.tier = tier - self.capacity = capacity - - -class SBSubscription(Resource): # pylint: disable=too-many-instance-attributes - """Description of subscription resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SystemData - :ivar message_count: Number of messages. - :vartype message_count: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar accessed_at: Last time there was a receive request to this subscription. - :vartype accessed_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2021_06_01_preview.models.MessageCountDetails - :ivar lock_duration: ISO 8061 lock duration timespan for the subscription. The default value is - 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar requires_session: Value indicating if a subscription supports the concept of sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :vartype dead_lettering_on_filter_evaluation_exceptions: bool - :ivar dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: Number of maximum deliveries. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - :ivar is_client_affine: Value that indicates whether the subscription has an affinity to the - client id. - :vartype is_client_affine: bool - :ivar client_affine_properties: Properties specific to client affine subscriptions. - :vartype client_affine_properties: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBClientAffineProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "message_count": {"readonly": True}, - "created_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_filter_evaluation_exceptions": { - "key": "properties.deadLetteringOnFilterEvaluationExceptions", - "type": "bool", - }, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - "is_client_affine": {"key": "properties.isClientAffine", "type": "bool"}, - "client_affine_properties": {"key": "properties.clientAffineProperties", "type": "SBClientAffineProperties"}, - } - - def __init__( - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_filter_evaluation_exceptions: Optional[bool] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - is_client_affine: Optional[bool] = None, - client_affine_properties: Optional["_models.SBClientAffineProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8061 lock duration timespan for the subscription. The default value - is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword requires_session: Value indicating if a subscription supports the concept of sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :paramtype dead_lettering_on_filter_evaluation_exceptions: bool - :keyword dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: Number of maximum deliveries. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - :keyword is_client_affine: Value that indicates whether the subscription has an affinity to the - client id. - :paramtype is_client_affine: bool - :keyword client_affine_properties: Properties specific to client affine subscriptions. - :paramtype client_affine_properties: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBClientAffineProperties - """ - super().__init__(**kwargs) - self.system_data = None - self.message_count = None - self.created_at = None - self.accessed_at = None - self.updated_at = None - self.count_details = None - self.lock_duration = lock_duration - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_filter_evaluation_exceptions = dead_lettering_on_filter_evaluation_exceptions - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - self.is_client_affine = is_client_affine - self.client_affine_properties = client_affine_properties - - -class SBSubscriptionListResult(_serialization.Model): - """The response to the List Subscriptions operation. - - :ivar value: Result of the List Subscriptions operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of subscriptions. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBSubscription]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBSubscription"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Subscriptions operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of subscriptions. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBTopic(Resource): # pylint: disable=too-many-instance-attributes - """Description of topic resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SystemData - :ivar size_in_bytes: Size of the topic, in bytes. - :vartype size_in_bytes: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time the message was sent, or a request was received, for this topic. - :vartype accessed_at: ~datetime.datetime - :ivar subscription_count: Number of subscriptions. - :vartype subscription_count: int - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2021_06_01_preview.models.MessageCountDetails - :ivar default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of the - memory allocated for the topic. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the topic. This property is only used in Premium today and default is 1024. - :vartype max_message_size_in_kilobytes: int - :ivar requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.EntityStatus - :ivar support_ordering: Value that indicates whether the topic supports ordering. - :vartype support_ordering: bool - :ivar auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :vartype enable_partitioning: bool - :ivar enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "subscription_count": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "subscription_count": {"key": "properties.subscriptionCount", "type": "int"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "max_message_size_in_kilobytes": {"key": "properties.maxMessageSizeInKilobytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "status": {"key": "properties.status", "type": "str"}, - "support_ordering": {"key": "properties.supportOrdering", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - } - - def __init__( - self, - *, - default_message_time_to_live: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - max_message_size_in_kilobytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - enable_batched_operations: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - support_ordering: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of - the memory allocated for the topic. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the topic. This property is only used in Premium today and default is 1024. - :paramtype max_message_size_in_kilobytes: int - :keyword requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2021_06_01_preview.models.EntityStatus - :keyword support_ordering: Value that indicates whether the topic supports ordering. - :paramtype support_ordering: bool - :keyword auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :paramtype enable_partitioning: bool - :keyword enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - """ - super().__init__(**kwargs) - self.system_data = None - self.size_in_bytes = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.subscription_count = None - self.count_details = None - self.default_message_time_to_live = default_message_time_to_live - self.max_size_in_megabytes = max_size_in_megabytes - self.max_message_size_in_kilobytes = max_message_size_in_kilobytes - self.requires_duplicate_detection = requires_duplicate_detection - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.enable_batched_operations = enable_batched_operations - self.status = status - self.support_ordering = support_ordering - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - - -class SBTopicListResult(_serialization.Model): - """The response to the List Topics operation. - - :ivar value: Result of the List Topics operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of topics. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBTopic]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBTopic"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Topics operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of topics. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SqlFilter(_serialization.Model): - """Represents a filter which is a composition of an expression and an action that is executed in - the pub/sub pipeline. - - :ivar sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: Optional[int] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class SqlRuleAction(Action): - """Represents set of actions written in SQL language-based syntax that is performed against a - ServiceBus.Messaging.BrokeredMessage. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - -class Subnet(_serialization.Model): - """Properties supplied for Subnet. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource ID of Virtual Network Subnet. Required. - :vartype id: str - """ - - _validation = { - "id": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: str, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: Resource ID of Virtual Network Subnet. Required. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class SystemData(_serialization.Model): - """Metadata pertaining to creation and last modification of the resource. - - :ivar created_by: The identity that created the resource. - :vartype created_by: str - :ivar created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :vartype created_by_type: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.CreatedByType - :ivar created_at: The timestamp of resource creation (UTC). - :vartype created_at: ~datetime.datetime - :ivar last_modified_by: The identity that last modified the resource. - :vartype last_modified_by: str - :ivar last_modified_by_type: The type of identity that last modified the resource. Known values - are: "User", "Application", "ManagedIdentity", and "Key". - :vartype last_modified_by_type: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.CreatedByType - :ivar last_modified_at: The type of identity that last modified the resource. - :vartype last_modified_at: ~datetime.datetime - """ - - _attribute_map = { - "created_by": {"key": "createdBy", "type": "str"}, - "created_by_type": {"key": "createdByType", "type": "str"}, - "created_at": {"key": "createdAt", "type": "iso-8601"}, - "last_modified_by": {"key": "lastModifiedBy", "type": "str"}, - "last_modified_by_type": {"key": "lastModifiedByType", "type": "str"}, - "last_modified_at": {"key": "lastModifiedAt", "type": "iso-8601"}, - } - - def __init__( - self, - *, - created_by: Optional[str] = None, - created_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - created_at: Optional[datetime.datetime] = None, - last_modified_by: Optional[str] = None, - last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - last_modified_at: Optional[datetime.datetime] = None, - **kwargs: Any - ) -> None: - """ - :keyword created_by: The identity that created the resource. - :paramtype created_by: str - :keyword created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :paramtype created_by_type: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.CreatedByType - :keyword created_at: The timestamp of resource creation (UTC). - :paramtype created_at: ~datetime.datetime - :keyword last_modified_by: The identity that last modified the resource. - :paramtype last_modified_by: str - :keyword last_modified_by_type: The type of identity that last modified the resource. Known - values are: "User", "Application", "ManagedIdentity", and "Key". - :paramtype last_modified_by_type: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.CreatedByType - :keyword last_modified_at: The type of identity that last modified the resource. - :paramtype last_modified_at: ~datetime.datetime - """ - super().__init__(**kwargs) - self.created_by = created_by - self.created_by_type = created_by_type - self.created_at = created_at - self.last_modified_by = last_modified_by - self.last_modified_by_type = last_modified_by_type - self.last_modified_at = last_modified_at - - -class UserAssignedIdentity(_serialization.Model): - """Recognized Dictionary value. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar principal_id: Principal Id of user assigned identity. - :vartype principal_id: str - :ivar client_id: Client Id of user assigned identity. - :vartype client_id: str - """ - - _validation = { - "principal_id": {"readonly": True}, - "client_id": {"readonly": True}, - } - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "client_id": {"key": "clientId", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.principal_id = None - self.client_id = None - - -class UserAssignedIdentityProperties(_serialization.Model): - """UserAssignedIdentityProperties. - - :ivar user_assigned_identity: ARM ID of user Identity selected for encryption. - :vartype user_assigned_identity: str - """ - - _attribute_map = { - "user_assigned_identity": {"key": "userAssignedIdentity", "type": "str"}, - } - - def __init__(self, *, user_assigned_identity: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword user_assigned_identity: ARM ID of user Identity selected for encryption. - :paramtype user_assigned_identity: str - """ - super().__init__(**kwargs) - self.user_assigned_identity = user_assigned_identity diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_service_bus_management_client_enums.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_service_bus_management_client_enums.py deleted file mode 100644 index ce716a014719..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/models/_service_bus_management_client_enums.py +++ /dev/null @@ -1,157 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from enum import Enum -from azure.core import CaseInsensitiveEnumMeta - - -class AccessRights(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """AccessRights.""" - - MANAGE = "Manage" - SEND = "Send" - LISTEN = "Listen" - - -class CreatedByType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The type of identity that created the resource.""" - - USER = "User" - APPLICATION = "Application" - MANAGED_IDENTITY = "ManagedIdentity" - KEY = "Key" - - -class DefaultAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Default Action for Network Rule Set.""" - - ALLOW = "Allow" - DENY = "Deny" - - -class EndPointProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Private Endpoint Connection.""" - - CREATING = "Creating" - UPDATING = "Updating" - DELETING = "Deleting" - SUCCEEDED = "Succeeded" - CANCELED = "Canceled" - FAILED = "Failed" - - -class EntityStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Entity status.""" - - ACTIVE = "Active" - DISABLED = "Disabled" - RESTORING = "Restoring" - SEND_DISABLED = "SendDisabled" - RECEIVE_DISABLED = "ReceiveDisabled" - CREATING = "Creating" - DELETING = "Deleting" - RENAMING = "Renaming" - UNKNOWN = "Unknown" - - -class FilterType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Rule filter types.""" - - SQL_FILTER = "SqlFilter" - CORRELATION_FILTER = "CorrelationFilter" - - -class KeyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The access key to regenerate.""" - - PRIMARY_KEY = "PrimaryKey" - SECONDARY_KEY = "SecondaryKey" - - -class ManagedServiceIdentityType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Type of managed service identity.""" - - SYSTEM_ASSIGNED = "SystemAssigned" - USER_ASSIGNED = "UserAssigned" - SYSTEM_ASSIGNED_USER_ASSIGNED = "SystemAssigned, UserAssigned" - NONE = "None" - - -class MigrationConfigurationName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """MigrationConfigurationName.""" - - _DEFAULT = "$default" - - -class NetworkRuleIPAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The IP Filter Action.""" - - ALLOW = "Allow" - - -class PrivateLinkConnectionStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Status of the connection.""" - - PENDING = "Pending" - APPROVED = "Approved" - REJECTED = "Rejected" - DISCONNECTED = "Disconnected" - - -class ProvisioningStateDR(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Alias(Disaster Recovery configuration) - possible values 'Accepted' - or 'Succeeded' or 'Failed'. - """ - - ACCEPTED = "Accepted" - SUCCEEDED = "Succeeded" - FAILED = "Failed" - - -class PublicNetworkAccessFlag(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """This determines if traffic is allowed over public network. By default it is enabled.""" - - ENABLED = "Enabled" - DISABLED = "Disabled" - - -class RoleDisasterRecovery(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' or - 'Secondary'. - """ - - PRIMARY = "Primary" - PRIMARY_NOT_REPLICATING = "PrimaryNotReplicating" - SECONDARY = "Secondary" - - -class SkuName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Name of this SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class SkuTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The billing tier of this particular SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class UnavailableReason(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Specifies the reason for the unavailability of the service.""" - - NONE = "None" - INVALID_NAME = "InvalidName" - SUBSCRIPTION_IS_DISABLED = "SubscriptionIsDisabled" - NAME_IN_USE = "NameInUse" - NAME_IN_LOCKDOWN = "NameInLockdown" - TOO_MANY_NAMESPACE_IN_CURRENT_SUBSCRIPTION = "TooManyNamespaceInCurrentSubscription" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/__init__.py deleted file mode 100644 index e5431803c533..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/__init__.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._operations import Operations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._rules_operations import RulesOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "Operations", - "DisasterRecoveryConfigsOperations", - "MigrationConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "RulesOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index b8bdc2809d27..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,1335 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_check_name_availability_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/CheckNameAvailability", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_break_pairing_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/breakPairing", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_fail_over_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/failover", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery or - IO[bytes] - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.ArmDisasterRecovery]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - if response.status_code == 200: - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.FailoverProperties or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_migration_configs_operations.py deleted file mode 100644 index 269329d50709..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_migration_configs_operations.py +++ /dev/null @@ -1,852 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_and_start_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_complete_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/upgrade", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_revert_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/revert", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties - or IO[bytes] - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2021_06_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_namespaces_operations.py deleted file mode 100644 index f0bc5f69ad92..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_namespaces_operations.py +++ /dev/null @@ -1,2242 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/namespaces") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_network_rule_set_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_network_rule_set_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_network_rule_sets_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_check_name_availability_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/CheckNameAvailability" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace or IO[bytes] - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _delete_initial(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> LROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespaceUpdateParameters - or IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_operations.py deleted file mode 100644 index 2e448f40b96c..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_operations.py +++ /dev/null @@ -1,156 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.ServiceBus/operations") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index 4c975304080b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,644 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - or IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> LROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_private_link_resources_operations.py deleted file mode 100644 index 32879ba84ce0..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,153 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateLinkResources", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_queues_operations.py deleted file mode 100644 index 6b90f2f302f3..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_queues_operations.py +++ /dev/null @@ -1,1453 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_rules_operations.py deleted file mode 100644 index bed540a915e9..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_rules_operations.py +++ /dev/null @@ -1,648 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscriptions_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_subscriptions_operations.py deleted file mode 100644 index 3d16c4c86eee..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_subscriptions_operations.py +++ /dev/null @@ -1,627 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_topic_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_topics_operations.py deleted file mode 100644 index 2af3811a213c..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/operations/_topics_operations.py +++ /dev/null @@ -1,1462 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-06-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_06_01_preview.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2021_06_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_06_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2021-06-01-preview") - ) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/py.typed b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/py.typed deleted file mode 100644 index e5aff4f83af8..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_06_01_preview/py.typed +++ /dev/null @@ -1 +0,0 @@ -# Marker file for PEP 561. \ No newline at end of file diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/__init__.py deleted file mode 100644 index 2e171d69863b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/__init__.py +++ /dev/null @@ -1,26 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient -from ._version import VERSION - -__version__ = VERSION - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_configuration.py deleted file mode 100644 index 9108596d3772..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy - -from ._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2021-11-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2021-11-01") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = ARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_metadata.json b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_metadata.json deleted file mode 100644 index 46fda0fef82a..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_metadata.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "chosen_version": "2021-11-01", - "total_api_version_list": ["2021-11-01"], - "client": { - "name": "ServiceBusManagementClient", - "filename": "_service_bus_management_client", - "description": "Azure Service Bus client for managing Namespace.", - "host_value": "\"https://management.azure.com\"", - "parameterized_host_template": null, - "azure_arm": true, - "has_public_lro_operations": true, - "client_side_validation": false, - "sync_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"ARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \".._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"AsyncARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"AsyncARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \"..._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "global_parameters": { - "sync": { - "credential": { - "signature": "credential: \"TokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials.TokenCredential", - "required": true, - "method_location": "positional" - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true, - "method_location": "positional" - } - }, - "async": { - "credential": { - "signature": "credential: \"AsyncTokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials_async.AsyncTokenCredential", - "required": true - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true - } - }, - "constant": { - }, - "call": "credential, subscription_id", - "service_client_specific": { - "sync": { - "api_version": { - "signature": "api_version: Optional[str]=None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles=KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - }, - "async": { - "api_version": { - "signature": "api_version: Optional[str] = None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles = KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - } - } - }, - "config": { - "credential": true, - "credential_scopes": ["https://management.azure.com/.default"], - "credential_call_sync": "ARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "credential_call_async": "AsyncARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "sync_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMChallengeAuthenticationPolicy\", \"ARMHttpLoggingPolicy\"]}, \"local\": {\"._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMHttpLoggingPolicy\", \"AsyncARMChallengeAuthenticationPolicy\"]}, \"local\": {\".._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "operation_groups": { - "namespaces": "NamespacesOperations", - "private_endpoint_connections": "PrivateEndpointConnectionsOperations", - "private_link_resources": "PrivateLinkResourcesOperations", - "operations": "Operations", - "disaster_recovery_configs": "DisasterRecoveryConfigsOperations", - "migration_configs": "MigrationConfigsOperations", - "queues": "QueuesOperations", - "topics": "TopicsOperations", - "rules": "RulesOperations", - "subscriptions": "SubscriptionsOperations" - } -} diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_service_bus_management_client.py deleted file mode 100644 index 3d1ae15662c5..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_service_bus_management_client.py +++ /dev/null @@ -1,167 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import HttpRequest, HttpResponse -from azure.mgmt.core import ARMPipelineClient -from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy - -from . import models as _models -from .._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: azure.mgmt.servicebus.v2021_11_01.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2021_11_01.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2021_11_01.operations.PrivateLinkResourcesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2021_11_01.operations.Operations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2021_11_01.operations.DisasterRecoveryConfigsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2021_11_01.operations.MigrationConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2021_11_01.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2021_11_01.operations.TopicsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2021_11_01.operations.RulesOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: azure.mgmt.servicebus.v2021_11_01.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2021-11-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "TokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - ARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - self.operations = Operations(self._client, self._config, self._serialize, self._deserialize, "2021-11-01") - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - self.queues = QueuesOperations(self._client, self._config, self._serialize, self._deserialize, "2021-11-01") - self.topics = TopicsOperations(self._client, self._config, self._serialize, self._deserialize, "2021-11-01") - self.rules = RulesOperations(self._client, self._config, self._serialize, self._deserialize, "2021-11-01") - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - - def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.HttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - def close(self) -> None: - self._client.close() - - def __enter__(self) -> Self: - self._client.__enter__() - return self - - def __exit__(self, *exc_details: Any) -> None: - self._client.__exit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_version.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_version.py deleted file mode 100644 index 22d4eb39aa93..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/_version.py +++ /dev/null @@ -1,9 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -VERSION = "8.2.1" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/__init__.py deleted file mode 100644 index 530b8638dfd3..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_configuration.py deleted file mode 100644 index 998796d63bce..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMHttpLoggingPolicy, AsyncARMChallengeAuthenticationPolicy - -from .._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2021-11-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2021-11-01") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.AsyncRedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.AsyncRetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = AsyncARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_service_bus_management_client.py deleted file mode 100644 index 413d485338ee..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/_service_bus_management_client.py +++ /dev/null @@ -1,170 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, Awaitable, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.mgmt.core import AsyncARMPipelineClient -from azure.mgmt.core.policies import AsyncARMAutoResourceProviderRegistrationPolicy - -from .. import models as _models -from ..._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: azure.mgmt.servicebus.v2021_11_01.aio.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2021_11_01.aio.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2021_11_01.aio.operations.PrivateLinkResourcesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2021_11_01.aio.operations.Operations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2021_11_01.aio.operations.DisasterRecoveryConfigsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2021_11_01.aio.operations.MigrationConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2021_11_01.aio.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2021_11_01.aio.operations.TopicsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2021_11_01.aio.operations.RulesOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2021_11_01.aio.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2021-11-01". Note that overriding this - default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "AsyncTokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - AsyncARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - self.operations = Operations(self._client, self._config, self._serialize, self._deserialize, "2021-11-01") - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - self.queues = QueuesOperations(self._client, self._config, self._serialize, self._deserialize, "2021-11-01") - self.topics = TopicsOperations(self._client, self._config, self._serialize, self._deserialize, "2021-11-01") - self.rules = RulesOperations(self._client, self._config, self._serialize, self._deserialize, "2021-11-01") - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2021-11-01" - ) - - def _send_request( - self, request: HttpRequest, *, stream: bool = False, **kwargs: Any - ) -> Awaitable[AsyncHttpResponse]: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = await client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.AsyncHttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - async def close(self) -> None: - await self._client.close() - - async def __aenter__(self) -> Self: - await self._client.__aenter__() - return self - - async def __aexit__(self, *exc_details: Any) -> None: - await self._client.__aexit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/__init__.py deleted file mode 100644 index e5431803c533..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/__init__.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._operations import Operations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._rules_operations import RulesOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "Operations", - "DisasterRecoveryConfigsOperations", - "MigrationConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "RulesOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index ace1832eef39..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,958 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._disaster_recovery_configs_operations import ( - build_break_pairing_request, - build_check_name_availability_request, - build_create_or_update_request, - build_delete_request, - build_fail_over_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_keys_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.aio.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery or IO[bytes] - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.ArmDisasterRecovery]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - if response.status_code == 200: - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.FailoverProperties or IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailability or IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_migration_configs_operations.py deleted file mode 100644 index 0ecb1063d6fb..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_migration_configs_operations.py +++ /dev/null @@ -1,610 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._migration_configs_operations import ( - build_complete_migration_request, - build_create_and_start_migration_request, - build_delete_request, - build_get_request, - build_list_request, - build_revert_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.aio.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties or - IO[bytes] - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_namespaces_operations.py deleted file mode 100644 index f196352f6e96..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_namespaces_operations.py +++ /dev/null @@ -1,1678 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._namespaces_operations import ( - build_check_name_availability_request, - build_create_or_update_authorization_rule_request, - build_create_or_update_network_rule_set_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_network_rule_set_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_resource_group_request, - build_list_keys_request, - build_list_network_rule_sets_request, - build_list_request, - build_regenerate_keys_request, - build_update_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.aio.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace or IO[bytes] - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> AsyncLROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespaceUpdateParameters or - IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailability or IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_operations.py deleted file mode 100644 index c75e7694169f..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_operations.py +++ /dev/null @@ -1,132 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._operations import build_list_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.aio.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index 8cbca2cba4d6..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,481 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._private_endpoint_connections_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.aio.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection or - IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncLROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_private_link_resources_operations.py deleted file mode 100644 index 14c64d7c8fcc..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,115 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._private_link_resources_operations import build_get_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.aio.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_queues_operations.py deleted file mode 100644 index ca8ca15e5a99..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_queues_operations.py +++ /dev/null @@ -1,1045 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._queues_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.aio.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_rules_operations.py deleted file mode 100644 index a13bb6f87482..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_rules_operations.py +++ /dev/null @@ -1,467 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._rules_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_subscriptions_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.aio.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_subscriptions_operations.py deleted file mode 100644 index c10b15b139fb..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_subscriptions_operations.py +++ /dev/null @@ -1,454 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._subscriptions_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_topic_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.aio.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_topics_operations.py deleted file mode 100644 index 13fb1a521ea8..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/aio/operations/_topics_operations.py +++ /dev/null @@ -1,1054 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._topics_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.aio.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/__init__.py deleted file mode 100644 index 86173dc24c8d..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/__init__.py +++ /dev/null @@ -1,163 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._models_py3 import AccessKeys -from ._models_py3 import Action -from ._models_py3 import ArmDisasterRecovery -from ._models_py3 import ArmDisasterRecoveryListResult -from ._models_py3 import CheckNameAvailability -from ._models_py3 import CheckNameAvailabilityResult -from ._models_py3 import ConnectionState -from ._models_py3 import CorrelationFilter -from ._models_py3 import Encryption -from ._models_py3 import ErrorAdditionalInfo -from ._models_py3 import ErrorResponse -from ._models_py3 import ErrorResponseError -from ._models_py3 import FailoverProperties -from ._models_py3 import Identity -from ._models_py3 import KeyVaultProperties -from ._models_py3 import MessageCountDetails -from ._models_py3 import MigrationConfigListResult -from ._models_py3 import MigrationConfigProperties -from ._models_py3 import NWRuleSetIpRules -from ._models_py3 import NWRuleSetVirtualNetworkRules -from ._models_py3 import NetworkRuleSet -from ._models_py3 import NetworkRuleSetListResult -from ._models_py3 import Operation -from ._models_py3 import OperationDisplay -from ._models_py3 import OperationListResult -from ._models_py3 import PrivateEndpoint -from ._models_py3 import PrivateEndpointConnection -from ._models_py3 import PrivateEndpointConnectionListResult -from ._models_py3 import PrivateLinkResource -from ._models_py3 import PrivateLinkResourcesListResult -from ._models_py3 import ProxyResource -from ._models_py3 import RegenerateAccessKeyParameters -from ._models_py3 import Resource -from ._models_py3 import ResourceNamespacePatch -from ._models_py3 import Rule -from ._models_py3 import RuleListResult -from ._models_py3 import SBAuthorizationRule -from ._models_py3 import SBAuthorizationRuleListResult -from ._models_py3 import SBClientAffineProperties -from ._models_py3 import SBNamespace -from ._models_py3 import SBNamespaceListResult -from ._models_py3 import SBNamespaceUpdateParameters -from ._models_py3 import SBQueue -from ._models_py3 import SBQueueListResult -from ._models_py3 import SBSku -from ._models_py3 import SBSubscription -from ._models_py3 import SBSubscriptionListResult -from ._models_py3 import SBTopic -from ._models_py3 import SBTopicListResult -from ._models_py3 import SqlFilter -from ._models_py3 import SqlRuleAction -from ._models_py3 import Subnet -from ._models_py3 import SystemData -from ._models_py3 import TrackedResource -from ._models_py3 import UserAssignedIdentity -from ._models_py3 import UserAssignedIdentityProperties - -from ._service_bus_management_client_enums import AccessRights -from ._service_bus_management_client_enums import CreatedByType -from ._service_bus_management_client_enums import DefaultAction -from ._service_bus_management_client_enums import EndPointProvisioningState -from ._service_bus_management_client_enums import EntityStatus -from ._service_bus_management_client_enums import FilterType -from ._service_bus_management_client_enums import KeyType -from ._service_bus_management_client_enums import ManagedServiceIdentityType -from ._service_bus_management_client_enums import MigrationConfigurationName -from ._service_bus_management_client_enums import NetworkRuleIPAction -from ._service_bus_management_client_enums import PrivateLinkConnectionStatus -from ._service_bus_management_client_enums import ProvisioningStateDR -from ._service_bus_management_client_enums import PublicNetworkAccessFlag -from ._service_bus_management_client_enums import RoleDisasterRecovery -from ._service_bus_management_client_enums import SkuName -from ._service_bus_management_client_enums import SkuTier -from ._service_bus_management_client_enums import UnavailableReason -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "AccessKeys", - "Action", - "ArmDisasterRecovery", - "ArmDisasterRecoveryListResult", - "CheckNameAvailability", - "CheckNameAvailabilityResult", - "ConnectionState", - "CorrelationFilter", - "Encryption", - "ErrorAdditionalInfo", - "ErrorResponse", - "ErrorResponseError", - "FailoverProperties", - "Identity", - "KeyVaultProperties", - "MessageCountDetails", - "MigrationConfigListResult", - "MigrationConfigProperties", - "NWRuleSetIpRules", - "NWRuleSetVirtualNetworkRules", - "NetworkRuleSet", - "NetworkRuleSetListResult", - "Operation", - "OperationDisplay", - "OperationListResult", - "PrivateEndpoint", - "PrivateEndpointConnection", - "PrivateEndpointConnectionListResult", - "PrivateLinkResource", - "PrivateLinkResourcesListResult", - "ProxyResource", - "RegenerateAccessKeyParameters", - "Resource", - "ResourceNamespacePatch", - "Rule", - "RuleListResult", - "SBAuthorizationRule", - "SBAuthorizationRuleListResult", - "SBClientAffineProperties", - "SBNamespace", - "SBNamespaceListResult", - "SBNamespaceUpdateParameters", - "SBQueue", - "SBQueueListResult", - "SBSku", - "SBSubscription", - "SBSubscriptionListResult", - "SBTopic", - "SBTopicListResult", - "SqlFilter", - "SqlRuleAction", - "Subnet", - "SystemData", - "TrackedResource", - "UserAssignedIdentity", - "UserAssignedIdentityProperties", - "AccessRights", - "CreatedByType", - "DefaultAction", - "EndPointProvisioningState", - "EntityStatus", - "FilterType", - "KeyType", - "ManagedServiceIdentityType", - "MigrationConfigurationName", - "NetworkRuleIPAction", - "PrivateLinkConnectionStatus", - "ProvisioningStateDR", - "PublicNetworkAccessFlag", - "RoleDisasterRecovery", - "SkuName", - "SkuTier", - "UnavailableReason", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_models_py3.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_models_py3.py deleted file mode 100644 index 3e20c9ecc032..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_models_py3.py +++ /dev/null @@ -1,3052 +0,0 @@ -# coding=utf-8 -# pylint: disable=too-many-lines -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -import datetime -import sys -from typing import Any, Dict, List, Literal, Optional, TYPE_CHECKING, Union - -from ... import _serialization - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from .. import models as _models -JSON = MutableMapping[str, Any] # pylint: disable=unsubscriptable-object - - -class AccessKeys(_serialization.Model): - """Namespace/ServiceBus Connection String. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar primary_connection_string: Primary connection string of the created namespace - authorization rule. - :vartype primary_connection_string: str - :ivar secondary_connection_string: Secondary connection string of the created namespace - authorization rule. - :vartype secondary_connection_string: str - :ivar alias_primary_connection_string: Primary connection string of the alias if GEO DR is - enabled. - :vartype alias_primary_connection_string: str - :ivar alias_secondary_connection_string: Secondary connection string of the alias if GEO DR is - enabled. - :vartype alias_secondary_connection_string: str - :ivar primary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype primary_key: str - :ivar secondary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype secondary_key: str - :ivar key_name: A string that describes the authorization rule. - :vartype key_name: str - """ - - _validation = { - "primary_connection_string": {"readonly": True}, - "secondary_connection_string": {"readonly": True}, - "alias_primary_connection_string": {"readonly": True}, - "alias_secondary_connection_string": {"readonly": True}, - "primary_key": {"readonly": True}, - "secondary_key": {"readonly": True}, - "key_name": {"readonly": True}, - } - - _attribute_map = { - "primary_connection_string": {"key": "primaryConnectionString", "type": "str"}, - "secondary_connection_string": {"key": "secondaryConnectionString", "type": "str"}, - "alias_primary_connection_string": {"key": "aliasPrimaryConnectionString", "type": "str"}, - "alias_secondary_connection_string": {"key": "aliasSecondaryConnectionString", "type": "str"}, - "primary_key": {"key": "primaryKey", "type": "str"}, - "secondary_key": {"key": "secondaryKey", "type": "str"}, - "key_name": {"key": "keyName", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.primary_connection_string = None - self.secondary_connection_string = None - self.alias_primary_connection_string = None - self.alias_secondary_connection_string = None - self.primary_key = None - self.secondary_key = None - self.key_name = None - - -class Action(_serialization.Model): - """Represents the filter actions which are allowed for the transformation of a message that have - been matched by a filter expression. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: Optional[int] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class ProxyResource(_serialization.Model): - """Common fields that are returned in the response for all Azure Resource Manager resources. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id = None - self.name = None - self.type = None - self.location = None - - -class ArmDisasterRecovery(ProxyResource): - """Single item in List or Get Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_11_01.models.SystemData - :ivar provisioning_state: Provisioning state of the Alias(Disaster Recovery configuration) - - possible values 'Accepted' or 'Succeeded' or 'Failed'. Known values are: "Accepted", - "Succeeded", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2021_11_01.models.ProvisioningStateDR - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is part - of GEO DR pairing. - :vartype partner_namespace: str - :ivar alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :vartype alternate_name: str - :ivar role: role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' - or 'Secondary'. Known values are: "Primary", "PrimaryNotReplicating", and "Secondary". - :vartype role: str or ~azure.mgmt.servicebus.v2021_11_01.models.RoleDisasterRecovery - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "role": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "partner_namespace": {"key": "properties.partnerNamespace", "type": "str"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - "role": {"key": "properties.role", "type": "str"}, - } - - def __init__( - self, *, partner_namespace: Optional[str] = None, alternate_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is - part of GEO DR pairing. - :paramtype partner_namespace: str - :keyword alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :paramtype alternate_name: str - """ - super().__init__(**kwargs) - self.system_data = None - self.provisioning_state = None - self.pending_replication_operations_count = None - self.partner_namespace = partner_namespace - self.alternate_name = alternate_name - self.role = None - - -class ArmDisasterRecoveryListResult(_serialization.Model): - """The result of the List Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Alias(Disaster Recovery configurations). - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Alias(Disaster Recovery configuration). - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[ArmDisasterRecovery]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.ArmDisasterRecovery"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Alias(Disaster Recovery configurations). - :paramtype value: list[~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class CheckNameAvailability(_serialization.Model): - """Description of a Check Name availability request properties. - - All required parameters must be populated in order to send to server. - - :ivar name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :vartype name: str - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - } - - def __init__(self, *, name: str, **kwargs: Any) -> None: - """ - :keyword name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :paramtype name: str - """ - super().__init__(**kwargs) - self.name = name - - -class CheckNameAvailabilityResult(_serialization.Model): - """Description of a Check Name availability request properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar message: The detailed info regarding the reason associated with the namespace. - :vartype message: str - :ivar name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :vartype name_available: bool - :ivar reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :vartype reason: str or ~azure.mgmt.servicebus.v2021_11_01.models.UnavailableReason - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "message": {"key": "message", "type": "str"}, - "name_available": {"key": "nameAvailable", "type": "bool"}, - "reason": {"key": "reason", "type": "str"}, - } - - def __init__( - self, - *, - name_available: Optional[bool] = None, - reason: Optional[Union[str, "_models.UnavailableReason"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :paramtype name_available: bool - :keyword reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :paramtype reason: str or ~azure.mgmt.servicebus.v2021_11_01.models.UnavailableReason - """ - super().__init__(**kwargs) - self.message = None - self.name_available = name_available - self.reason = reason - - -class ConnectionState(_serialization.Model): - """ConnectionState information. - - :ivar status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :vartype status: str or ~azure.mgmt.servicebus.v2021_11_01.models.PrivateLinkConnectionStatus - :ivar description: Description of the connection state. - :vartype description: str - """ - - _attribute_map = { - "status": {"key": "status", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__( - self, - *, - status: Optional[Union[str, "_models.PrivateLinkConnectionStatus"]] = None, - description: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :paramtype status: str or ~azure.mgmt.servicebus.v2021_11_01.models.PrivateLinkConnectionStatus - :keyword description: Description of the connection state. - :paramtype description: str - """ - super().__init__(**kwargs) - self.status = status - self.description = description - - -class CorrelationFilter(_serialization.Model): - """Represents the correlation filter expression. - - :ivar properties: dictionary object for custom filters. - :vartype properties: dict[str, str] - :ivar correlation_id: Identifier of the correlation. - :vartype correlation_id: str - :ivar message_id: Identifier of the message. - :vartype message_id: str - :ivar to: Address to send to. - :vartype to: str - :ivar reply_to: Address of the queue to reply to. - :vartype reply_to: str - :ivar label: Application specific label. - :vartype label: str - :ivar session_id: Session identifier. - :vartype session_id: str - :ivar reply_to_session_id: Session identifier to reply to. - :vartype reply_to_session_id: str - :ivar content_type: Content type of the message. - :vartype content_type: str - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "properties": {"key": "properties", "type": "{str}"}, - "correlation_id": {"key": "correlationId", "type": "str"}, - "message_id": {"key": "messageId", "type": "str"}, - "to": {"key": "to", "type": "str"}, - "reply_to": {"key": "replyTo", "type": "str"}, - "label": {"key": "label", "type": "str"}, - "session_id": {"key": "sessionId", "type": "str"}, - "reply_to_session_id": {"key": "replyToSessionId", "type": "str"}, - "content_type": {"key": "contentType", "type": "str"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - properties: Optional[Dict[str, str]] = None, - correlation_id: Optional[str] = None, - message_id: Optional[str] = None, - to: Optional[str] = None, - reply_to: Optional[str] = None, - label: Optional[str] = None, - session_id: Optional[str] = None, - reply_to_session_id: Optional[str] = None, - content_type: Optional[str] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword properties: dictionary object for custom filters. - :paramtype properties: dict[str, str] - :keyword correlation_id: Identifier of the correlation. - :paramtype correlation_id: str - :keyword message_id: Identifier of the message. - :paramtype message_id: str - :keyword to: Address to send to. - :paramtype to: str - :keyword reply_to: Address of the queue to reply to. - :paramtype reply_to: str - :keyword label: Application specific label. - :paramtype label: str - :keyword session_id: Session identifier. - :paramtype session_id: str - :keyword reply_to_session_id: Session identifier to reply to. - :paramtype reply_to_session_id: str - :keyword content_type: Content type of the message. - :paramtype content_type: str - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.properties = properties - self.correlation_id = correlation_id - self.message_id = message_id - self.to = to - self.reply_to = reply_to - self.label = label - self.session_id = session_id - self.reply_to_session_id = reply_to_session_id - self.content_type = content_type - self.requires_preprocessing = requires_preprocessing - - -class Encryption(_serialization.Model): - """Properties to configure Encryption. - - :ivar key_vault_properties: Properties of KeyVault. - :vartype key_vault_properties: - list[~azure.mgmt.servicebus.v2021_11_01.models.KeyVaultProperties] - :ivar key_source: Enumerates the possible value of keySource for Encryption. Default value is - "Microsoft.KeyVault". - :vartype key_source: str - :ivar require_infrastructure_encryption: Enable Infrastructure Encryption (Double Encryption). - :vartype require_infrastructure_encryption: bool - """ - - _attribute_map = { - "key_vault_properties": {"key": "keyVaultProperties", "type": "[KeyVaultProperties]"}, - "key_source": {"key": "keySource", "type": "str"}, - "require_infrastructure_encryption": {"key": "requireInfrastructureEncryption", "type": "bool"}, - } - - def __init__( - self, - *, - key_vault_properties: Optional[List["_models.KeyVaultProperties"]] = None, - key_source: Literal["Microsoft.KeyVault"] = "Microsoft.KeyVault", - require_infrastructure_encryption: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword key_vault_properties: Properties of KeyVault. - :paramtype key_vault_properties: - list[~azure.mgmt.servicebus.v2021_11_01.models.KeyVaultProperties] - :keyword key_source: Enumerates the possible value of keySource for Encryption. Default value - is "Microsoft.KeyVault". - :paramtype key_source: str - :keyword require_infrastructure_encryption: Enable Infrastructure Encryption (Double - Encryption). - :paramtype require_infrastructure_encryption: bool - """ - super().__init__(**kwargs) - self.key_vault_properties = key_vault_properties - self.key_source = key_source - self.require_infrastructure_encryption = require_infrastructure_encryption - - -class ErrorAdditionalInfo(_serialization.Model): - """The resource management error additional info. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar type: The additional info type. - :vartype type: str - :ivar info: The additional info. - :vartype info: JSON - """ - - _validation = { - "type": {"readonly": True}, - "info": {"readonly": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "info": {"key": "info", "type": "object"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.type = None - self.info = None - - -class ErrorResponse(_serialization.Model): - """The resource management error response. - - :ivar error: The error object. - :vartype error: ~azure.mgmt.servicebus.v2021_11_01.models.ErrorResponseError - """ - - _attribute_map = { - "error": {"key": "error", "type": "ErrorResponseError"}, - } - - def __init__(self, *, error: Optional["_models.ErrorResponseError"] = None, **kwargs: Any) -> None: - """ - :keyword error: The error object. - :paramtype error: ~azure.mgmt.servicebus.v2021_11_01.models.ErrorResponseError - """ - super().__init__(**kwargs) - self.error = error - - -class ErrorResponseError(_serialization.Model): - """The error object. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.servicebus.v2021_11_01.models.ErrorResponse] - :ivar additional_info: The error additional info. - :vartype additional_info: list[~azure.mgmt.servicebus.v2021_11_01.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[ErrorResponse]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code = None - self.message = None - self.target = None - self.details = None - self.additional_info = None - - -class FailoverProperties(_serialization.Model): - """Safe failover is to indicate the service should wait for pending replication to finish before - switching to the secondary. - - :ivar is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :vartype is_safe_failover: bool - """ - - _attribute_map = { - "is_safe_failover": {"key": "properties.IsSafeFailover", "type": "bool"}, - } - - def __init__(self, *, is_safe_failover: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :paramtype is_safe_failover: bool - """ - super().__init__(**kwargs) - self.is_safe_failover = is_safe_failover - - -class Identity(_serialization.Model): - """Properties to configure User Assigned Identities for Bring your Own Keys. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar principal_id: ObjectId from the KeyVault. - :vartype principal_id: str - :ivar tenant_id: TenantId from the KeyVault. - :vartype tenant_id: str - :ivar type: Type of managed service identity. Known values are: "SystemAssigned", - "UserAssigned", "SystemAssigned, UserAssigned", and "None". - :vartype type: str or ~azure.mgmt.servicebus.v2021_11_01.models.ManagedServiceIdentityType - :ivar user_assigned_identities: Properties for User Assigned Identities. - :vartype user_assigned_identities: dict[str, - ~azure.mgmt.servicebus.v2021_11_01.models.UserAssignedIdentity] - """ - - _validation = { - "principal_id": {"readonly": True}, - "tenant_id": {"readonly": True}, - } - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "tenant_id": {"key": "tenantId", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "user_assigned_identities": {"key": "userAssignedIdentities", "type": "{UserAssignedIdentity}"}, - } - - def __init__( - self, - *, - type: Optional[Union[str, "_models.ManagedServiceIdentityType"]] = None, - user_assigned_identities: Optional[Dict[str, "_models.UserAssignedIdentity"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword type: Type of managed service identity. Known values are: "SystemAssigned", - "UserAssigned", "SystemAssigned, UserAssigned", and "None". - :paramtype type: str or ~azure.mgmt.servicebus.v2021_11_01.models.ManagedServiceIdentityType - :keyword user_assigned_identities: Properties for User Assigned Identities. - :paramtype user_assigned_identities: dict[str, - ~azure.mgmt.servicebus.v2021_11_01.models.UserAssignedIdentity] - """ - super().__init__(**kwargs) - self.principal_id = None - self.tenant_id = None - self.type = type - self.user_assigned_identities = user_assigned_identities - - -class KeyVaultProperties(_serialization.Model): - """Properties to configure keyVault Properties. - - :ivar key_name: Name of the Key from KeyVault. - :vartype key_name: str - :ivar key_vault_uri: Uri of KeyVault. - :vartype key_vault_uri: str - :ivar key_version: Version of KeyVault. - :vartype key_version: str - :ivar identity: - :vartype identity: ~azure.mgmt.servicebus.v2021_11_01.models.UserAssignedIdentityProperties - """ - - _attribute_map = { - "key_name": {"key": "keyName", "type": "str"}, - "key_vault_uri": {"key": "keyVaultUri", "type": "str"}, - "key_version": {"key": "keyVersion", "type": "str"}, - "identity": {"key": "identity", "type": "UserAssignedIdentityProperties"}, - } - - def __init__( - self, - *, - key_name: Optional[str] = None, - key_vault_uri: Optional[str] = None, - key_version: Optional[str] = None, - identity: Optional["_models.UserAssignedIdentityProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword key_name: Name of the Key from KeyVault. - :paramtype key_name: str - :keyword key_vault_uri: Uri of KeyVault. - :paramtype key_vault_uri: str - :keyword key_version: Version of KeyVault. - :paramtype key_version: str - :keyword identity: - :paramtype identity: ~azure.mgmt.servicebus.v2021_11_01.models.UserAssignedIdentityProperties - """ - super().__init__(**kwargs) - self.key_name = key_name - self.key_vault_uri = key_vault_uri - self.key_version = key_version - self.identity = identity - - -class MessageCountDetails(_serialization.Model): - """Message Count Details. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar active_message_count: Number of active messages in the queue, topic, or subscription. - :vartype active_message_count: int - :ivar dead_letter_message_count: Number of messages that are dead lettered. - :vartype dead_letter_message_count: int - :ivar scheduled_message_count: Number of scheduled messages. - :vartype scheduled_message_count: int - :ivar transfer_message_count: Number of messages transferred to another queue, topic, or - subscription. - :vartype transfer_message_count: int - :ivar transfer_dead_letter_message_count: Number of messages transferred into dead letters. - :vartype transfer_dead_letter_message_count: int - """ - - _validation = { - "active_message_count": {"readonly": True}, - "dead_letter_message_count": {"readonly": True}, - "scheduled_message_count": {"readonly": True}, - "transfer_message_count": {"readonly": True}, - "transfer_dead_letter_message_count": {"readonly": True}, - } - - _attribute_map = { - "active_message_count": {"key": "activeMessageCount", "type": "int"}, - "dead_letter_message_count": {"key": "deadLetterMessageCount", "type": "int"}, - "scheduled_message_count": {"key": "scheduledMessageCount", "type": "int"}, - "transfer_message_count": {"key": "transferMessageCount", "type": "int"}, - "transfer_dead_letter_message_count": {"key": "transferDeadLetterMessageCount", "type": "int"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.active_message_count = None - self.dead_letter_message_count = None - self.scheduled_message_count = None - self.transfer_message_count = None - self.transfer_dead_letter_message_count = None - - -class MigrationConfigListResult(_serialization.Model): - """The result of the List migrationConfigurations operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Migration Configs. - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of migrationConfigurations. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[MigrationConfigProperties]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.MigrationConfigProperties"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Migration Configs. - :paramtype value: list[~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class MigrationConfigProperties(ProxyResource): - """Single item in List or Get Migration Config operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_11_01.models.SystemData - :ivar provisioning_state: Provisioning state of Migration Configuration. - :vartype provisioning_state: str - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar target_namespace: Existing premium Namespace ARM Id name which has no entities, will be - used for migration. - :vartype target_namespace: str - :ivar post_migration_name: Name to access Standard Namespace after migration. - :vartype post_migration_name: str - :ivar migration_state: State in which Standard to Premium Migration is, possible values : - Unknown, Reverting, Completing, Initiating, Syncing, Active. - :vartype migration_state: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "migration_state": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "target_namespace": {"key": "properties.targetNamespace", "type": "str"}, - "post_migration_name": {"key": "properties.postMigrationName", "type": "str"}, - "migration_state": {"key": "properties.migrationState", "type": "str"}, - } - - def __init__( - self, *, target_namespace: Optional[str] = None, post_migration_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword target_namespace: Existing premium Namespace ARM Id name which has no entities, will - be used for migration. - :paramtype target_namespace: str - :keyword post_migration_name: Name to access Standard Namespace after migration. - :paramtype post_migration_name: str - """ - super().__init__(**kwargs) - self.system_data = None - self.provisioning_state = None - self.pending_replication_operations_count = None - self.target_namespace = target_namespace - self.post_migration_name = post_migration_name - self.migration_state = None - - -class NetworkRuleSet(ProxyResource): - """Description of NetworkRuleSet resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_11_01.models.SystemData - :ivar trusted_service_access_enabled: Value that indicates whether Trusted Service Access is - Enabled or not. - :vartype trusted_service_access_enabled: bool - :ivar default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :vartype default_action: str or ~azure.mgmt.servicebus.v2021_11_01.models.DefaultAction - :ivar virtual_network_rules: List VirtualNetwork Rules. - :vartype virtual_network_rules: - list[~azure.mgmt.servicebus.v2021_11_01.models.NWRuleSetVirtualNetworkRules] - :ivar ip_rules: List of IpRules. - :vartype ip_rules: list[~azure.mgmt.servicebus.v2021_11_01.models.NWRuleSetIpRules] - :ivar public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled" and "Disabled". - :vartype public_network_access: str or - ~azure.mgmt.servicebus.v2021_11_01.models.PublicNetworkAccessFlag - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "trusted_service_access_enabled": {"key": "properties.trustedServiceAccessEnabled", "type": "bool"}, - "default_action": {"key": "properties.defaultAction", "type": "str"}, - "virtual_network_rules": {"key": "properties.virtualNetworkRules", "type": "[NWRuleSetVirtualNetworkRules]"}, - "ip_rules": {"key": "properties.ipRules", "type": "[NWRuleSetIpRules]"}, - "public_network_access": {"key": "properties.publicNetworkAccess", "type": "str"}, - } - - def __init__( - self, - *, - trusted_service_access_enabled: Optional[bool] = None, - default_action: Optional[Union[str, "_models.DefaultAction"]] = None, - virtual_network_rules: Optional[List["_models.NWRuleSetVirtualNetworkRules"]] = None, - ip_rules: Optional[List["_models.NWRuleSetIpRules"]] = None, - public_network_access: Union[str, "_models.PublicNetworkAccessFlag"] = "Enabled", - **kwargs: Any - ) -> None: - """ - :keyword trusted_service_access_enabled: Value that indicates whether Trusted Service Access is - Enabled or not. - :paramtype trusted_service_access_enabled: bool - :keyword default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :paramtype default_action: str or ~azure.mgmt.servicebus.v2021_11_01.models.DefaultAction - :keyword virtual_network_rules: List VirtualNetwork Rules. - :paramtype virtual_network_rules: - list[~azure.mgmt.servicebus.v2021_11_01.models.NWRuleSetVirtualNetworkRules] - :keyword ip_rules: List of IpRules. - :paramtype ip_rules: list[~azure.mgmt.servicebus.v2021_11_01.models.NWRuleSetIpRules] - :keyword public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled" and "Disabled". - :paramtype public_network_access: str or - ~azure.mgmt.servicebus.v2021_11_01.models.PublicNetworkAccessFlag - """ - super().__init__(**kwargs) - self.system_data = None - self.trusted_service_access_enabled = trusted_service_access_enabled - self.default_action = default_action - self.virtual_network_rules = virtual_network_rules - self.ip_rules = ip_rules - self.public_network_access = public_network_access - - -class NetworkRuleSetListResult(_serialization.Model): - """The response of the List NetworkRuleSet operation. - - :ivar value: Result of the List NetworkRuleSet operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of NetworkRuleSet. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[NetworkRuleSet]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.NetworkRuleSet"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List NetworkRuleSet operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of NetworkRuleSet. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class NWRuleSetIpRules(_serialization.Model): - """Description of NetWorkRuleSet - IpRules resource. - - :ivar ip_mask: IP Mask. - :vartype ip_mask: str - :ivar action: The IP Filter Action. "Allow" - :vartype action: str or ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleIPAction - """ - - _attribute_map = { - "ip_mask": {"key": "ipMask", "type": "str"}, - "action": {"key": "action", "type": "str"}, - } - - def __init__( - self, - *, - ip_mask: Optional[str] = None, - action: Union[str, "_models.NetworkRuleIPAction"] = "Allow", - **kwargs: Any - ) -> None: - """ - :keyword ip_mask: IP Mask. - :paramtype ip_mask: str - :keyword action: The IP Filter Action. "Allow" - :paramtype action: str or ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleIPAction - """ - super().__init__(**kwargs) - self.ip_mask = ip_mask - self.action = action - - -class NWRuleSetVirtualNetworkRules(_serialization.Model): - """Description of VirtualNetworkRules - NetworkRules resource. - - :ivar subnet: Subnet properties. - :vartype subnet: ~azure.mgmt.servicebus.v2021_11_01.models.Subnet - :ivar ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing VNet - Service Endpoint. - :vartype ignore_missing_vnet_service_endpoint: bool - """ - - _attribute_map = { - "subnet": {"key": "subnet", "type": "Subnet"}, - "ignore_missing_vnet_service_endpoint": {"key": "ignoreMissingVnetServiceEndpoint", "type": "bool"}, - } - - def __init__( - self, - *, - subnet: Optional["_models.Subnet"] = None, - ignore_missing_vnet_service_endpoint: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword subnet: Subnet properties. - :paramtype subnet: ~azure.mgmt.servicebus.v2021_11_01.models.Subnet - :keyword ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing - VNet Service Endpoint. - :paramtype ignore_missing_vnet_service_endpoint: bool - """ - super().__init__(**kwargs) - self.subnet = subnet - self.ignore_missing_vnet_service_endpoint = ignore_missing_vnet_service_endpoint - - -class Operation(_serialization.Model): - """A Service Bus REST API operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar name: Operation name: {provider}/{resource}/{operation}. - :vartype name: str - :ivar is_data_action: Indicates whether the operation is a data action. - :vartype is_data_action: bool - :ivar display: Display of the operation. - :vartype display: ~azure.mgmt.servicebus.v2021_11_01.models.OperationDisplay - :ivar origin: Origin of the operation. - :vartype origin: str - :ivar properties: Properties of the operation. - :vartype properties: JSON - """ - - _validation = { - "name": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "is_data_action": {"key": "isDataAction", "type": "bool"}, - "display": {"key": "display", "type": "OperationDisplay"}, - "origin": {"key": "origin", "type": "str"}, - "properties": {"key": "properties", "type": "object"}, - } - - def __init__( - self, - *, - is_data_action: Optional[bool] = None, - display: Optional["_models.OperationDisplay"] = None, - origin: Optional[str] = None, - properties: Optional[JSON] = None, - **kwargs: Any - ) -> None: - """ - :keyword is_data_action: Indicates whether the operation is a data action. - :paramtype is_data_action: bool - :keyword display: Display of the operation. - :paramtype display: ~azure.mgmt.servicebus.v2021_11_01.models.OperationDisplay - :keyword origin: Origin of the operation. - :paramtype origin: str - :keyword properties: Properties of the operation. - :paramtype properties: JSON - """ - super().__init__(**kwargs) - self.name = None - self.is_data_action = is_data_action - self.display = display - self.origin = origin - self.properties = properties - - -class OperationDisplay(_serialization.Model): - """Operation display payload. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provider: Resource provider of the operation. - :vartype provider: str - :ivar resource: Resource of the operation. - :vartype resource: str - :ivar operation: Localized friendly name for the operation. - :vartype operation: str - :ivar description: Localized friendly description for the operation. - :vartype description: str - """ - - _validation = { - "provider": {"readonly": True}, - "resource": {"readonly": True}, - "operation": {"readonly": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "provider": {"key": "provider", "type": "str"}, - "resource": {"key": "resource", "type": "str"}, - "operation": {"key": "operation", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.provider = None - self.resource = None - self.operation = None - self.description = None - - -class OperationListResult(_serialization.Model): - """Result of the request to list ServiceBus operations. It contains a list of operations and a URL - link to get the next set of results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of ServiceBus operations supported by the Microsoft.ServiceBus resource - provider. - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.Operation] - :ivar next_link: URL to get the next set of operation list results if there are any. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Operation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value = None - self.next_link = None - - -class PrivateEndpoint(_serialization.Model): - """PrivateEndpoint information. - - :ivar id: The ARM identifier for Private Endpoint. - :vartype id: str - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: The ARM identifier for Private Endpoint. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class PrivateEndpointConnection(ProxyResource): - """Properties of the PrivateEndpointConnection. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_11_01.models.SystemData - :ivar private_endpoint: The Private Endpoint resource for this Connection. - :vartype private_endpoint: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpoint - :ivar private_link_service_connection_state: Details about the state of the connection. - :vartype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2021_11_01.models.ConnectionState - :ivar provisioning_state: Provisioning state of the Private Endpoint Connection. Known values - are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2021_11_01.models.EndPointProvisioningState - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "private_endpoint": {"key": "properties.privateEndpoint", "type": "PrivateEndpoint"}, - "private_link_service_connection_state": { - "key": "properties.privateLinkServiceConnectionState", - "type": "ConnectionState", - }, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - } - - def __init__( - self, - *, - private_endpoint: Optional["_models.PrivateEndpoint"] = None, - private_link_service_connection_state: Optional["_models.ConnectionState"] = None, - provisioning_state: Optional[Union[str, "_models.EndPointProvisioningState"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword private_endpoint: The Private Endpoint resource for this Connection. - :paramtype private_endpoint: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpoint - :keyword private_link_service_connection_state: Details about the state of the connection. - :paramtype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2021_11_01.models.ConnectionState - :keyword provisioning_state: Provisioning state of the Private Endpoint Connection. Known - values are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :paramtype provisioning_state: str or - ~azure.mgmt.servicebus.v2021_11_01.models.EndPointProvisioningState - """ - super().__init__(**kwargs) - self.system_data = None - self.private_endpoint = private_endpoint - self.private_link_service_connection_state = private_link_service_connection_state - self.provisioning_state = provisioning_state - - -class PrivateEndpointConnectionListResult(_serialization.Model): - """Result of the list of all private endpoint connections operation. - - :ivar value: A collection of private endpoint connection resources. - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection] - :ivar next_link: A link for the next page of private endpoint connection resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateEndpointConnection]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateEndpointConnection"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private endpoint connection resources. - :paramtype value: list[~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection] - :keyword next_link: A link for the next page of private endpoint connection resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class PrivateLinkResource(_serialization.Model): - """Information of the private link resource. - - :ivar id: Fully qualified identifier of the resource. - :vartype id: str - :ivar name: Name of the resource. - :vartype name: str - :ivar type: Type of the resource. - :vartype type: str - :ivar group_id: - :vartype group_id: str - :ivar required_members: Required Members. - :vartype required_members: list[str] - :ivar required_zone_names: Required Zone Names. - :vartype required_zone_names: list[str] - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "group_id": {"key": "properties.groupId", "type": "str"}, - "required_members": {"key": "properties.requiredMembers", "type": "[str]"}, - "required_zone_names": {"key": "properties.requiredZoneNames", "type": "[str]"}, - } - - def __init__( - self, - *, - id: Optional[str] = None, # pylint: disable=redefined-builtin - name: Optional[str] = None, - type: Optional[str] = None, - group_id: Optional[str] = None, - required_members: Optional[List[str]] = None, - required_zone_names: Optional[List[str]] = None, - **kwargs: Any - ) -> None: - """ - :keyword id: Fully qualified identifier of the resource. - :paramtype id: str - :keyword name: Name of the resource. - :paramtype name: str - :keyword type: Type of the resource. - :paramtype type: str - :keyword group_id: - :paramtype group_id: str - :keyword required_members: Required Members. - :paramtype required_members: list[str] - :keyword required_zone_names: Required Zone Names. - :paramtype required_zone_names: list[str] - """ - super().__init__(**kwargs) - self.id = id - self.name = name - self.type = type - self.group_id = group_id - self.required_members = required_members - self.required_zone_names = required_zone_names - - -class PrivateLinkResourcesListResult(_serialization.Model): - """Result of the List private link resources operation. - - :ivar value: A collection of private link resources. - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.PrivateLinkResource] - :ivar next_link: A link for the next page of private link resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateLinkResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateLinkResource"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private link resources. - :paramtype value: list[~azure.mgmt.servicebus.v2021_11_01.models.PrivateLinkResource] - :keyword next_link: A link for the next page of private link resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class RegenerateAccessKeyParameters(_serialization.Model): - """Parameters supplied to the Regenerate Authorization Rule operation, specifies which key needs - to be reset. - - All required parameters must be populated in order to send to server. - - :ivar key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :vartype key_type: str or ~azure.mgmt.servicebus.v2021_11_01.models.KeyType - :ivar key: Optional, if the key value provided, is reset for KeyType value or autogenerate Key - value set for keyType. - :vartype key: str - """ - - _validation = { - "key_type": {"required": True}, - } - - _attribute_map = { - "key_type": {"key": "keyType", "type": "str"}, - "key": {"key": "key", "type": "str"}, - } - - def __init__(self, *, key_type: Union[str, "_models.KeyType"], key: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :paramtype key_type: str or ~azure.mgmt.servicebus.v2021_11_01.models.KeyType - :keyword key: Optional, if the key value provided, is reset for KeyType value or autogenerate - Key value set for keyType. - :paramtype key: str - """ - super().__init__(**kwargs) - self.key_type = key_type - self.key = key - - -class Resource(_serialization.Model): - """The Resource definition for other than namespace. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id = None - self.name = None - self.type = None - - -class ResourceNamespacePatch(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: Optional[str] = None, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class Rule(ProxyResource): - """Description of Rule Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_11_01.models.SystemData - :ivar action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :vartype action: ~azure.mgmt.servicebus.v2021_11_01.models.Action - :ivar filter_type: Filter type that is evaluated against a BrokeredMessage. Known values are: - "SqlFilter" and "CorrelationFilter". - :vartype filter_type: str or ~azure.mgmt.servicebus.v2021_11_01.models.FilterType - :ivar sql_filter: Properties of sqlFilter. - :vartype sql_filter: ~azure.mgmt.servicebus.v2021_11_01.models.SqlFilter - :ivar correlation_filter: Properties of correlationFilter. - :vartype correlation_filter: ~azure.mgmt.servicebus.v2021_11_01.models.CorrelationFilter - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "action": {"key": "properties.action", "type": "Action"}, - "filter_type": {"key": "properties.filterType", "type": "str"}, - "sql_filter": {"key": "properties.sqlFilter", "type": "SqlFilter"}, - "correlation_filter": {"key": "properties.correlationFilter", "type": "CorrelationFilter"}, - } - - def __init__( - self, - *, - action: Optional["_models.Action"] = None, - filter_type: Optional[Union[str, "_models.FilterType"]] = None, - sql_filter: Optional["_models.SqlFilter"] = None, - correlation_filter: Optional["_models.CorrelationFilter"] = None, - **kwargs: Any - ) -> None: - """ - :keyword action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :paramtype action: ~azure.mgmt.servicebus.v2021_11_01.models.Action - :keyword filter_type: Filter type that is evaluated against a BrokeredMessage. Known values - are: "SqlFilter" and "CorrelationFilter". - :paramtype filter_type: str or ~azure.mgmt.servicebus.v2021_11_01.models.FilterType - :keyword sql_filter: Properties of sqlFilter. - :paramtype sql_filter: ~azure.mgmt.servicebus.v2021_11_01.models.SqlFilter - :keyword correlation_filter: Properties of correlationFilter. - :paramtype correlation_filter: ~azure.mgmt.servicebus.v2021_11_01.models.CorrelationFilter - """ - super().__init__(**kwargs) - self.system_data = None - self.action = action - self.filter_type = filter_type - self.sql_filter = sql_filter - self.correlation_filter = correlation_filter - - -class RuleListResult(_serialization.Model): - """The response of the List rule operation. - - :ivar value: Result of the List Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.Rule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[Rule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.Rule"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_11_01.models.Rule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBAuthorizationRule(ProxyResource): - """Description of a namespace authorization rule. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_11_01.models.SystemData - :ivar rights: The rights associated with the rule. - :vartype rights: list[str or ~azure.mgmt.servicebus.v2021_11_01.models.AccessRights] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "rights": {"key": "properties.rights", "type": "[str]"}, - } - - def __init__(self, *, rights: Optional[List[Union[str, "_models.AccessRights"]]] = None, **kwargs: Any) -> None: - """ - :keyword rights: The rights associated with the rule. - :paramtype rights: list[str or ~azure.mgmt.servicebus.v2021_11_01.models.AccessRights] - """ - super().__init__(**kwargs) - self.system_data = None - self.rights = rights - - -class SBAuthorizationRuleListResult(_serialization.Model): - """The response to the List Namespace operation. - - :ivar value: Result of the List Authorization Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Authorization Rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBAuthorizationRule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.SBAuthorizationRule"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Authorization Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Authorization Rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBClientAffineProperties(_serialization.Model): - """Properties specific to client affine subscriptions. - - :ivar client_id: Indicates the Client ID of the application that created the client-affine - subscription. - :vartype client_id: str - :ivar is_durable: For client-affine subscriptions, this value indicates whether the - subscription is durable or not. - :vartype is_durable: bool - :ivar is_shared: For client-affine subscriptions, this value indicates whether the subscription - is shared or not. - :vartype is_shared: bool - """ - - _attribute_map = { - "client_id": {"key": "clientId", "type": "str"}, - "is_durable": {"key": "isDurable", "type": "bool"}, - "is_shared": {"key": "isShared", "type": "bool"}, - } - - def __init__( - self, - *, - client_id: Optional[str] = None, - is_durable: Optional[bool] = None, - is_shared: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword client_id: Indicates the Client ID of the application that created the client-affine - subscription. - :paramtype client_id: str - :keyword is_durable: For client-affine subscriptions, this value indicates whether the - subscription is durable or not. - :paramtype is_durable: bool - :keyword is_shared: For client-affine subscriptions, this value indicates whether the - subscription is shared or not. - :paramtype is_shared: bool - """ - super().__init__(**kwargs) - self.client_id = client_id - self.is_durable = is_durable - self.is_shared = is_shared - - -class TrackedResource(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class SBNamespace(TrackedResource): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2021_11_01.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2021_11_01.models.Identity - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_11_01.models.SystemData - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar zone_redundant: Enabling this property creates a Premium Service Bus Namespace in regions - supported availability zones. - :vartype zone_redundant: bool - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2021_11_01.models.Encryption - :ivar private_endpoint_connections: List of private endpoint connections. - :vartype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection] - :ivar disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :vartype disable_local_auth: bool - :ivar alternate_name: Alternate name for namespace. - :vartype alternate_name: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "zone_redundant": {"key": "properties.zoneRedundant", "type": "bool"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - "private_endpoint_connections": { - "key": "properties.privateEndpointConnections", - "type": "[PrivateEndpointConnection]", - }, - "disable_local_auth": {"key": "properties.disableLocalAuth", "type": "bool"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - } - - def __init__( - self, - *, - location: str, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - zone_redundant: Optional[bool] = None, - encryption: Optional["_models.Encryption"] = None, - private_endpoint_connections: Optional[List["_models.PrivateEndpointConnection"]] = None, - disable_local_auth: Optional[bool] = None, - alternate_name: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2021_11_01.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2021_11_01.models.Identity - :keyword zone_redundant: Enabling this property creates a Premium Service Bus Namespace in - regions supported availability zones. - :paramtype zone_redundant: bool - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2021_11_01.models.Encryption - :keyword private_endpoint_connections: List of private endpoint connections. - :paramtype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection] - :keyword disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :paramtype disable_local_auth: bool - :keyword alternate_name: Alternate name for namespace. - :paramtype alternate_name: str - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.system_data = None - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.zone_redundant = zone_redundant - self.encryption = encryption - self.private_endpoint_connections = private_endpoint_connections - self.disable_local_auth = disable_local_auth - self.alternate_name = alternate_name - - -class SBNamespaceListResult(_serialization.Model): - """The response of the List Namespace operation. - - :ivar value: Result of the List Namespace operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Namespaces. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBNamespace]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBNamespace"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Namespace operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Namespaces. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBNamespaceUpdateParameters(ResourceNamespacePatch): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2021_11_01.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2021_11_01.models.Identity - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2021_11_01.models.Encryption - :ivar private_endpoint_connections: List of private endpoint connections. - :vartype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection] - :ivar disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :vartype disable_local_auth: bool - :ivar alternate_name: Alternate name for namespace. - :vartype alternate_name: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - "private_endpoint_connections": { - "key": "properties.privateEndpointConnections", - "type": "[PrivateEndpointConnection]", - }, - "disable_local_auth": {"key": "properties.disableLocalAuth", "type": "bool"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - encryption: Optional["_models.Encryption"] = None, - private_endpoint_connections: Optional[List["_models.PrivateEndpointConnection"]] = None, - disable_local_auth: Optional[bool] = None, - alternate_name: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2021_11_01.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2021_11_01.models.Identity - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2021_11_01.models.Encryption - :keyword private_endpoint_connections: List of private endpoint connections. - :paramtype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection] - :keyword disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :paramtype disable_local_auth: bool - :keyword alternate_name: Alternate name for namespace. - :paramtype alternate_name: str - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.encryption = encryption - self.private_endpoint_connections = private_endpoint_connections - self.disable_local_auth = disable_local_auth - self.alternate_name = alternate_name - - -class SBQueue(ProxyResource): # pylint: disable=too-many-instance-attributes - """Description of queue Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_11_01.models.SystemData - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2021_11_01.models.MessageCountDetails - :ivar created_at: The exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time a message was sent, or the last time there was a receive request - to this queue. - :vartype accessed_at: ~datetime.datetime - :ivar size_in_bytes: The size of the queue, in bytes. - :vartype size_in_bytes: int - :ivar message_count: The number of messages in the queue. - :vartype message_count: int - :ivar lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size of - memory allocated for the queue. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the queue. This property is only used in Premium today and default is 1024. - :vartype max_message_size_in_kilobytes: int - :ivar requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar requires_session: A value that indicates whether the queue supports the concept of - sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_message_expiration: A value that indicates whether this queue has dead - letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: The maximum delivery count. A message is automatically deadlettered - after this number of deliveries. default value is 10. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2021_11_01.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: A value that indicates whether the queue is to be partitioned across - multiple message brokers. - :vartype enable_partitioning: bool - :ivar enable_express: A value that indicates whether Express Entities are enabled. An express - queue holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "count_details": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "message_count": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "max_message_size_in_kilobytes": {"key": "properties.maxMessageSizeInKilobytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - max_message_size_in_kilobytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size - of memory allocated for the queue. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the queue. This property is only used in Premium today and default is 1024. - :paramtype max_message_size_in_kilobytes: int - :keyword requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword requires_session: A value that indicates whether the queue supports the concept of - sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_message_expiration: A value that indicates whether this queue has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: The maximum delivery count. A message is automatically - deadlettered after this number of deliveries. default value is 10. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2021_11_01.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: A value that indicates whether the queue is to be partitioned - across multiple message brokers. - :paramtype enable_partitioning: bool - :keyword enable_express: A value that indicates whether Express Entities are enabled. An - express queue holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - """ - super().__init__(**kwargs) - self.system_data = None - self.count_details = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.size_in_bytes = None - self.message_count = None - self.lock_duration = lock_duration - self.max_size_in_megabytes = max_size_in_megabytes - self.max_message_size_in_kilobytes = max_message_size_in_kilobytes - self.requires_duplicate_detection = requires_duplicate_detection - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - - -class SBQueueListResult(_serialization.Model): - """The response to the List Queues operation. - - :ivar value: Result of the List Queues operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.SBQueue] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of queues. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBQueue]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBQueue"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Queues operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_11_01.models.SBQueue] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of queues. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBSku(_serialization.Model): - """SKU of the namespace. - - All required parameters must be populated in order to send to server. - - :ivar name: Name of this SKU. Required. Known values are: "Basic", "Standard", and "Premium". - :vartype name: str or ~azure.mgmt.servicebus.v2021_11_01.models.SkuName - :ivar tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", and - "Premium". - :vartype tier: str or ~azure.mgmt.servicebus.v2021_11_01.models.SkuTier - :ivar capacity: The specified messaging units for the tier. For Premium tier, capacity are 1,2 - and 4. - :vartype capacity: int - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "tier": {"key": "tier", "type": "str"}, - "capacity": {"key": "capacity", "type": "int"}, - } - - def __init__( - self, - *, - name: Union[str, "_models.SkuName"], - tier: Optional[Union[str, "_models.SkuTier"]] = None, - capacity: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Name of this SKU. Required. Known values are: "Basic", "Standard", and - "Premium". - :paramtype name: str or ~azure.mgmt.servicebus.v2021_11_01.models.SkuName - :keyword tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", - and "Premium". - :paramtype tier: str or ~azure.mgmt.servicebus.v2021_11_01.models.SkuTier - :keyword capacity: The specified messaging units for the tier. For Premium tier, capacity are - 1,2 and 4. - :paramtype capacity: int - """ - super().__init__(**kwargs) - self.name = name - self.tier = tier - self.capacity = capacity - - -class SBSubscription(ProxyResource): # pylint: disable=too-many-instance-attributes - """Description of subscription resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_11_01.models.SystemData - :ivar message_count: Number of messages. - :vartype message_count: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar accessed_at: Last time there was a receive request to this subscription. - :vartype accessed_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2021_11_01.models.MessageCountDetails - :ivar lock_duration: ISO 8061 lock duration timespan for the subscription. The default value is - 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar requires_session: Value indicating if a subscription supports the concept of sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :vartype dead_lettering_on_filter_evaluation_exceptions: bool - :ivar dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: Number of maximum deliveries. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2021_11_01.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - :ivar is_client_affine: Value that indicates whether the subscription has an affinity to the - client id. - :vartype is_client_affine: bool - :ivar client_affine_properties: Properties specific to client affine subscriptions. - :vartype client_affine_properties: - ~azure.mgmt.servicebus.v2021_11_01.models.SBClientAffineProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "message_count": {"readonly": True}, - "created_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_filter_evaluation_exceptions": { - "key": "properties.deadLetteringOnFilterEvaluationExceptions", - "type": "bool", - }, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - "is_client_affine": {"key": "properties.isClientAffine", "type": "bool"}, - "client_affine_properties": {"key": "properties.clientAffineProperties", "type": "SBClientAffineProperties"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_filter_evaluation_exceptions: Optional[bool] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - is_client_affine: Optional[bool] = None, - client_affine_properties: Optional["_models.SBClientAffineProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8061 lock duration timespan for the subscription. The default value - is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword requires_session: Value indicating if a subscription supports the concept of sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :paramtype dead_lettering_on_filter_evaluation_exceptions: bool - :keyword dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: Number of maximum deliveries. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2021_11_01.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - :keyword is_client_affine: Value that indicates whether the subscription has an affinity to the - client id. - :paramtype is_client_affine: bool - :keyword client_affine_properties: Properties specific to client affine subscriptions. - :paramtype client_affine_properties: - ~azure.mgmt.servicebus.v2021_11_01.models.SBClientAffineProperties - """ - super().__init__(**kwargs) - self.system_data = None - self.message_count = None - self.created_at = None - self.accessed_at = None - self.updated_at = None - self.count_details = None - self.lock_duration = lock_duration - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_filter_evaluation_exceptions = dead_lettering_on_filter_evaluation_exceptions - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - self.is_client_affine = is_client_affine - self.client_affine_properties = client_affine_properties - - -class SBSubscriptionListResult(_serialization.Model): - """The response to the List Subscriptions operation. - - :ivar value: Result of the List Subscriptions operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of subscriptions. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBSubscription]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBSubscription"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Subscriptions operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of subscriptions. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBTopic(ProxyResource): # pylint: disable=too-many-instance-attributes - """Description of topic resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2021_11_01.models.SystemData - :ivar size_in_bytes: Size of the topic, in bytes. - :vartype size_in_bytes: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time the message was sent, or a request was received, for this topic. - :vartype accessed_at: ~datetime.datetime - :ivar subscription_count: Number of subscriptions. - :vartype subscription_count: int - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2021_11_01.models.MessageCountDetails - :ivar default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of the - memory allocated for the topic. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the topic. This property is only used in Premium today and default is 1024. - :vartype max_message_size_in_kilobytes: int - :ivar requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2021_11_01.models.EntityStatus - :ivar support_ordering: Value that indicates whether the topic supports ordering. - :vartype support_ordering: bool - :ivar auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :vartype enable_partitioning: bool - :ivar enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "subscription_count": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "subscription_count": {"key": "properties.subscriptionCount", "type": "int"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "max_message_size_in_kilobytes": {"key": "properties.maxMessageSizeInKilobytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "status": {"key": "properties.status", "type": "str"}, - "support_ordering": {"key": "properties.supportOrdering", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - } - - def __init__( - self, - *, - default_message_time_to_live: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - max_message_size_in_kilobytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - enable_batched_operations: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - support_ordering: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of - the memory allocated for the topic. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the topic. This property is only used in Premium today and default is 1024. - :paramtype max_message_size_in_kilobytes: int - :keyword requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2021_11_01.models.EntityStatus - :keyword support_ordering: Value that indicates whether the topic supports ordering. - :paramtype support_ordering: bool - :keyword auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :paramtype enable_partitioning: bool - :keyword enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - """ - super().__init__(**kwargs) - self.system_data = None - self.size_in_bytes = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.subscription_count = None - self.count_details = None - self.default_message_time_to_live = default_message_time_to_live - self.max_size_in_megabytes = max_size_in_megabytes - self.max_message_size_in_kilobytes = max_message_size_in_kilobytes - self.requires_duplicate_detection = requires_duplicate_detection - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.enable_batched_operations = enable_batched_operations - self.status = status - self.support_ordering = support_ordering - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - - -class SBTopicListResult(_serialization.Model): - """The response to the List Topics operation. - - :ivar value: Result of the List Topics operation. - :vartype value: list[~azure.mgmt.servicebus.v2021_11_01.models.SBTopic] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of topics. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBTopic]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBTopic"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Topics operation. - :paramtype value: list[~azure.mgmt.servicebus.v2021_11_01.models.SBTopic] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of topics. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SqlFilter(_serialization.Model): - """Represents a filter which is a composition of an expression and an action that is executed in - the pub/sub pipeline. - - :ivar sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: Optional[int] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class SqlRuleAction(Action): - """Represents set of actions written in SQL language-based syntax that is performed against a - ServiceBus.Messaging.BrokeredMessage. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - -class Subnet(_serialization.Model): - """Properties supplied for Subnet. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource ID of Virtual Network Subnet. Required. - :vartype id: str - """ - - _validation = { - "id": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: str, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: Resource ID of Virtual Network Subnet. Required. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class SystemData(_serialization.Model): - """Metadata pertaining to creation and last modification of the resource. - - :ivar created_by: The identity that created the resource. - :vartype created_by: str - :ivar created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :vartype created_by_type: str or ~azure.mgmt.servicebus.v2021_11_01.models.CreatedByType - :ivar created_at: The timestamp of resource creation (UTC). - :vartype created_at: ~datetime.datetime - :ivar last_modified_by: The identity that last modified the resource. - :vartype last_modified_by: str - :ivar last_modified_by_type: The type of identity that last modified the resource. Known values - are: "User", "Application", "ManagedIdentity", and "Key". - :vartype last_modified_by_type: str or ~azure.mgmt.servicebus.v2021_11_01.models.CreatedByType - :ivar last_modified_at: The type of identity that last modified the resource. - :vartype last_modified_at: ~datetime.datetime - """ - - _attribute_map = { - "created_by": {"key": "createdBy", "type": "str"}, - "created_by_type": {"key": "createdByType", "type": "str"}, - "created_at": {"key": "createdAt", "type": "iso-8601"}, - "last_modified_by": {"key": "lastModifiedBy", "type": "str"}, - "last_modified_by_type": {"key": "lastModifiedByType", "type": "str"}, - "last_modified_at": {"key": "lastModifiedAt", "type": "iso-8601"}, - } - - def __init__( - self, - *, - created_by: Optional[str] = None, - created_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - created_at: Optional[datetime.datetime] = None, - last_modified_by: Optional[str] = None, - last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - last_modified_at: Optional[datetime.datetime] = None, - **kwargs: Any - ) -> None: - """ - :keyword created_by: The identity that created the resource. - :paramtype created_by: str - :keyword created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :paramtype created_by_type: str or ~azure.mgmt.servicebus.v2021_11_01.models.CreatedByType - :keyword created_at: The timestamp of resource creation (UTC). - :paramtype created_at: ~datetime.datetime - :keyword last_modified_by: The identity that last modified the resource. - :paramtype last_modified_by: str - :keyword last_modified_by_type: The type of identity that last modified the resource. Known - values are: "User", "Application", "ManagedIdentity", and "Key". - :paramtype last_modified_by_type: str or - ~azure.mgmt.servicebus.v2021_11_01.models.CreatedByType - :keyword last_modified_at: The type of identity that last modified the resource. - :paramtype last_modified_at: ~datetime.datetime - """ - super().__init__(**kwargs) - self.created_by = created_by - self.created_by_type = created_by_type - self.created_at = created_at - self.last_modified_by = last_modified_by - self.last_modified_by_type = last_modified_by_type - self.last_modified_at = last_modified_at - - -class UserAssignedIdentity(_serialization.Model): - """Recognized Dictionary value. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar principal_id: Principal Id of user assigned identity. - :vartype principal_id: str - :ivar client_id: Client Id of user assigned identity. - :vartype client_id: str - """ - - _validation = { - "principal_id": {"readonly": True}, - "client_id": {"readonly": True}, - } - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "client_id": {"key": "clientId", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.principal_id = None - self.client_id = None - - -class UserAssignedIdentityProperties(_serialization.Model): - """UserAssignedIdentityProperties. - - :ivar user_assigned_identity: ARM ID of user Identity selected for encryption. - :vartype user_assigned_identity: str - """ - - _attribute_map = { - "user_assigned_identity": {"key": "userAssignedIdentity", "type": "str"}, - } - - def __init__(self, *, user_assigned_identity: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword user_assigned_identity: ARM ID of user Identity selected for encryption. - :paramtype user_assigned_identity: str - """ - super().__init__(**kwargs) - self.user_assigned_identity = user_assigned_identity diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_service_bus_management_client_enums.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_service_bus_management_client_enums.py deleted file mode 100644 index ce716a014719..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/models/_service_bus_management_client_enums.py +++ /dev/null @@ -1,157 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from enum import Enum -from azure.core import CaseInsensitiveEnumMeta - - -class AccessRights(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """AccessRights.""" - - MANAGE = "Manage" - SEND = "Send" - LISTEN = "Listen" - - -class CreatedByType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The type of identity that created the resource.""" - - USER = "User" - APPLICATION = "Application" - MANAGED_IDENTITY = "ManagedIdentity" - KEY = "Key" - - -class DefaultAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Default Action for Network Rule Set.""" - - ALLOW = "Allow" - DENY = "Deny" - - -class EndPointProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Private Endpoint Connection.""" - - CREATING = "Creating" - UPDATING = "Updating" - DELETING = "Deleting" - SUCCEEDED = "Succeeded" - CANCELED = "Canceled" - FAILED = "Failed" - - -class EntityStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Entity status.""" - - ACTIVE = "Active" - DISABLED = "Disabled" - RESTORING = "Restoring" - SEND_DISABLED = "SendDisabled" - RECEIVE_DISABLED = "ReceiveDisabled" - CREATING = "Creating" - DELETING = "Deleting" - RENAMING = "Renaming" - UNKNOWN = "Unknown" - - -class FilterType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Rule filter types.""" - - SQL_FILTER = "SqlFilter" - CORRELATION_FILTER = "CorrelationFilter" - - -class KeyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The access key to regenerate.""" - - PRIMARY_KEY = "PrimaryKey" - SECONDARY_KEY = "SecondaryKey" - - -class ManagedServiceIdentityType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Type of managed service identity.""" - - SYSTEM_ASSIGNED = "SystemAssigned" - USER_ASSIGNED = "UserAssigned" - SYSTEM_ASSIGNED_USER_ASSIGNED = "SystemAssigned, UserAssigned" - NONE = "None" - - -class MigrationConfigurationName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """MigrationConfigurationName.""" - - _DEFAULT = "$default" - - -class NetworkRuleIPAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The IP Filter Action.""" - - ALLOW = "Allow" - - -class PrivateLinkConnectionStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Status of the connection.""" - - PENDING = "Pending" - APPROVED = "Approved" - REJECTED = "Rejected" - DISCONNECTED = "Disconnected" - - -class ProvisioningStateDR(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Alias(Disaster Recovery configuration) - possible values 'Accepted' - or 'Succeeded' or 'Failed'. - """ - - ACCEPTED = "Accepted" - SUCCEEDED = "Succeeded" - FAILED = "Failed" - - -class PublicNetworkAccessFlag(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """This determines if traffic is allowed over public network. By default it is enabled.""" - - ENABLED = "Enabled" - DISABLED = "Disabled" - - -class RoleDisasterRecovery(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' or - 'Secondary'. - """ - - PRIMARY = "Primary" - PRIMARY_NOT_REPLICATING = "PrimaryNotReplicating" - SECONDARY = "Secondary" - - -class SkuName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Name of this SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class SkuTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The billing tier of this particular SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class UnavailableReason(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Specifies the reason for the unavailability of the service.""" - - NONE = "None" - INVALID_NAME = "InvalidName" - SUBSCRIPTION_IS_DISABLED = "SubscriptionIsDisabled" - NAME_IN_USE = "NameInUse" - NAME_IN_LOCKDOWN = "NameInLockdown" - TOO_MANY_NAMESPACE_IN_CURRENT_SUBSCRIPTION = "TooManyNamespaceInCurrentSubscription" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/__init__.py deleted file mode 100644 index e5431803c533..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/__init__.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._operations import Operations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._rules_operations import RulesOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "Operations", - "DisasterRecoveryConfigsOperations", - "MigrationConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "RulesOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index 1fb318dabaef..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,1312 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_break_pairing_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/breakPairing", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_fail_over_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/failover", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_check_name_availability_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/CheckNameAvailability", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.ArmDisasterRecovery]: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery or IO[bytes] - :return: ArmDisasterRecovery or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.ArmDisasterRecovery]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - if response.status_code == 200: - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.FailoverProperties or IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailability or IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_migration_configs_operations.py deleted file mode 100644 index 80c6b9c76d8d..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_migration_configs_operations.py +++ /dev/null @@ -1,831 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_and_start_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_complete_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/upgrade", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_revert_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/revert", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties or - IO[bytes] - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or ~azure.mgmt.servicebus.v2021_11_01.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_namespaces_operations.py deleted file mode 100644 index 1e84af983f67..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_namespaces_operations.py +++ /dev/null @@ -1,2197 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/namespaces") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_network_rule_set_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_network_rule_set_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_network_rule_sets_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_check_name_availability_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/CheckNameAvailability" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace or IO[bytes] - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _delete_initial(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> LROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespaceUpdateParameters or - IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailability or IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_operations.py deleted file mode 100644 index 09b16e5ef44b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_operations.py +++ /dev/null @@ -1,153 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.ServiceBus/operations") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index c9626c04bd81..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,634 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection or - IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> LROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_private_link_resources_operations.py deleted file mode 100644 index 2f432cbddf00..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,151 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateLinkResources", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_queues_operations.py deleted file mode 100644 index ed6840edc537..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_queues_operations.py +++ /dev/null @@ -1,1431 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_rules_operations.py deleted file mode 100644 index a941e189fbe9..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_rules_operations.py +++ /dev/null @@ -1,640 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscriptions_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_subscriptions_operations.py deleted file mode 100644 index cb27553ace7b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_subscriptions_operations.py +++ /dev/null @@ -1,618 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_topic_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_topics_operations.py deleted file mode 100644 index 322bc83b0ce0..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/operations/_topics_operations.py +++ /dev/null @@ -1,1440 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2021-11-01")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2021_11_01.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule or IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.RegenerateAccessKeyParameters or - IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2021_11_01.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2021_11_01.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2021-11-01")) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/py.typed b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/py.typed deleted file mode 100644 index e5aff4f83af8..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2021_11_01/py.typed +++ /dev/null @@ -1 +0,0 @@ -# Marker file for PEP 561. \ No newline at end of file diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/__init__.py deleted file mode 100644 index 2e171d69863b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/__init__.py +++ /dev/null @@ -1,26 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient -from ._version import VERSION - -__version__ = VERSION - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_configuration.py deleted file mode 100644 index 2024e61b541a..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy - -from ._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2022-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2022-01-01-preview") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = ARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_metadata.json b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_metadata.json deleted file mode 100644 index 675826770086..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_metadata.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "chosen_version": "2022-01-01-preview", - "total_api_version_list": ["2022-01-01-preview"], - "client": { - "name": "ServiceBusManagementClient", - "filename": "_service_bus_management_client", - "description": "Azure Service Bus client for managing Namespace.", - "host_value": "\"https://management.azure.com\"", - "parameterized_host_template": null, - "azure_arm": true, - "has_public_lro_operations": true, - "client_side_validation": false, - "sync_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"ARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \".._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"AsyncARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"AsyncARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \"..._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "global_parameters": { - "sync": { - "credential": { - "signature": "credential: \"TokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials.TokenCredential", - "required": true, - "method_location": "positional" - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true, - "method_location": "positional" - } - }, - "async": { - "credential": { - "signature": "credential: \"AsyncTokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials_async.AsyncTokenCredential", - "required": true - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true - } - }, - "constant": { - }, - "call": "credential, subscription_id", - "service_client_specific": { - "sync": { - "api_version": { - "signature": "api_version: Optional[str]=None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles=KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - }, - "async": { - "api_version": { - "signature": "api_version: Optional[str] = None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles = KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - } - } - }, - "config": { - "credential": true, - "credential_scopes": ["https://management.azure.com/.default"], - "credential_call_sync": "ARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "credential_call_async": "AsyncARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "sync_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMChallengeAuthenticationPolicy\", \"ARMHttpLoggingPolicy\"]}, \"local\": {\"._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMHttpLoggingPolicy\", \"AsyncARMChallengeAuthenticationPolicy\"]}, \"local\": {\".._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "operation_groups": { - "namespaces": "NamespacesOperations", - "private_endpoint_connections": "PrivateEndpointConnectionsOperations", - "private_link_resources": "PrivateLinkResourcesOperations", - "operations": "Operations", - "disaster_recovery_configs": "DisasterRecoveryConfigsOperations", - "migration_configs": "MigrationConfigsOperations", - "queues": "QueuesOperations", - "topics": "TopicsOperations", - "rules": "RulesOperations", - "subscriptions": "SubscriptionsOperations" - } -} diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_service_bus_management_client.py deleted file mode 100644 index 821930aeadee..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_service_bus_management_client.py +++ /dev/null @@ -1,176 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import HttpRequest, HttpResponse -from azure.mgmt.core import ARMPipelineClient -from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy - -from . import models as _models -from .._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: azure.mgmt.servicebus.v2022_01_01_preview.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2022_01_01_preview.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2022_01_01_preview.operations.PrivateLinkResourcesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2022_01_01_preview.operations.Operations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2022_01_01_preview.operations.DisasterRecoveryConfigsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2022_01_01_preview.operations.MigrationConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2022_01_01_preview.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2022_01_01_preview.operations.TopicsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2022_01_01_preview.operations.RulesOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2022_01_01_preview.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2022-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "TokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - ARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.operations = Operations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.queues = QueuesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.topics = TopicsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.rules = RulesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - - def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.HttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - def close(self) -> None: - self._client.close() - - def __enter__(self) -> Self: - self._client.__enter__() - return self - - def __exit__(self, *exc_details: Any) -> None: - self._client.__exit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_version.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_version.py deleted file mode 100644 index 22d4eb39aa93..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/_version.py +++ /dev/null @@ -1,9 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -VERSION = "8.2.1" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/__init__.py deleted file mode 100644 index 530b8638dfd3..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_configuration.py deleted file mode 100644 index f9590692e0b2..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMHttpLoggingPolicy, AsyncARMChallengeAuthenticationPolicy - -from .._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2022-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2022-01-01-preview") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.AsyncRedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.AsyncRetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = AsyncARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_service_bus_management_client.py deleted file mode 100644 index 3435adb1bfae..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/_service_bus_management_client.py +++ /dev/null @@ -1,179 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, Awaitable, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.mgmt.core import AsyncARMPipelineClient -from azure.mgmt.core.policies import AsyncARMAutoResourceProviderRegistrationPolicy - -from .. import models as _models -from ..._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: - azure.mgmt.servicebus.v2022_01_01_preview.aio.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2022_01_01_preview.aio.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2022_01_01_preview.aio.operations.PrivateLinkResourcesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2022_01_01_preview.aio.operations.Operations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2022_01_01_preview.aio.operations.DisasterRecoveryConfigsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2022_01_01_preview.aio.operations.MigrationConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2022_01_01_preview.aio.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2022_01_01_preview.aio.operations.TopicsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2022_01_01_preview.aio.operations.RulesOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2022_01_01_preview.aio.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2022-01-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "AsyncTokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - AsyncARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.operations = Operations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.queues = QueuesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.topics = TopicsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.rules = RulesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-01-01-preview" - ) - - def _send_request( - self, request: HttpRequest, *, stream: bool = False, **kwargs: Any - ) -> Awaitable[AsyncHttpResponse]: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = await client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.AsyncHttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - async def close(self) -> None: - await self._client.close() - - async def __aenter__(self) -> Self: - await self._client.__aenter__() - return self - - async def __aexit__(self, *exc_details: Any) -> None: - await self._client.__aexit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/__init__.py deleted file mode 100644 index e5431803c533..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/__init__.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._operations import Operations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._rules_operations import RulesOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "Operations", - "DisasterRecoveryConfigsOperations", - "MigrationConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "RulesOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index 90cd35a30439..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,979 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._disaster_recovery_configs_operations import ( - build_break_pairing_request, - build_check_name_availability_request, - build_create_or_update_request, - build_delete_request, - build_fail_over_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_keys_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery or - IO[bytes] - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.FailoverProperties or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_migration_configs_operations.py deleted file mode 100644 index c8c69b4b4ff0..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_migration_configs_operations.py +++ /dev/null @@ -1,631 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._migration_configs_operations import ( - build_complete_migration_request, - build_create_and_start_migration_request, - build_delete_request, - build_get_request, - build_list_request, - build_revert_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties - or IO[bytes] - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_namespaces_operations.py deleted file mode 100644 index 0079e641a4fd..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_namespaces_operations.py +++ /dev/null @@ -1,1717 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._namespaces_operations import ( - build_check_name_availability_request, - build_create_or_update_authorization_rule_request, - build_create_or_update_network_rule_set_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_network_rule_set_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_resource_group_request, - build_list_keys_request, - build_list_network_rule_sets_request, - build_list_request, - build_regenerate_keys_request, - build_update_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace or IO[bytes] - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> AsyncLROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespaceUpdateParameters - or IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_operations.py deleted file mode 100644 index 7379e1b7b098..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_operations.py +++ /dev/null @@ -1,134 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._operations import build_list_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index 3244be80f616..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,491 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._private_endpoint_connections_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - or IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncLROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_private_link_resources_operations.py deleted file mode 100644 index f83af5dd61a1..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,117 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._private_link_resources_operations import build_get_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_queues_operations.py deleted file mode 100644 index ca8bd8393626..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_queues_operations.py +++ /dev/null @@ -1,1067 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._queues_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_rules_operations.py deleted file mode 100644 index 463ed2b0fc42..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_rules_operations.py +++ /dev/null @@ -1,476 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._rules_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_subscriptions_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_subscriptions_operations.py deleted file mode 100644 index d5b00696f5cd..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_subscriptions_operations.py +++ /dev/null @@ -1,462 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._subscriptions_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_topic_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_topics_operations.py deleted file mode 100644 index 0833419db5a9..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/aio/operations/_topics_operations.py +++ /dev/null @@ -1,1076 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._topics_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.aio.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/__init__.py deleted file mode 100644 index f766e5ccef14..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/__init__.py +++ /dev/null @@ -1,169 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._models_py3 import AccessKeys -from ._models_py3 import Action -from ._models_py3 import ArmDisasterRecovery -from ._models_py3 import ArmDisasterRecoveryListResult -from ._models_py3 import CheckNameAvailability -from ._models_py3 import CheckNameAvailabilityResult -from ._models_py3 import ConnectionState -from ._models_py3 import CorrelationFilter -from ._models_py3 import Encryption -from ._models_py3 import ErrorAdditionalInfo -from ._models_py3 import ErrorResponse -from ._models_py3 import ErrorResponseError -from ._models_py3 import FailoverProperties -from ._models_py3 import Identity -from ._models_py3 import KeyVaultProperties -from ._models_py3 import MessageCountDetails -from ._models_py3 import MigrationConfigListResult -from ._models_py3 import MigrationConfigProperties -from ._models_py3 import NWRuleSetIpRules -from ._models_py3 import NWRuleSetVirtualNetworkRules -from ._models_py3 import NetworkRuleSet -from ._models_py3 import NetworkRuleSetListResult -from ._models_py3 import Operation -from ._models_py3 import OperationDisplay -from ._models_py3 import OperationListResult -from ._models_py3 import PrivateEndpoint -from ._models_py3 import PrivateEndpointConnection -from ._models_py3 import PrivateEndpointConnectionListResult -from ._models_py3 import PrivateLinkResource -from ._models_py3 import PrivateLinkResourcesListResult -from ._models_py3 import ProxyResource -from ._models_py3 import RegenerateAccessKeyParameters -from ._models_py3 import Resource -from ._models_py3 import ResourceNamespacePatch -from ._models_py3 import Rule -from ._models_py3 import RuleListResult -from ._models_py3 import SBAuthorizationRule -from ._models_py3 import SBAuthorizationRuleListResult -from ._models_py3 import SBClientAffineProperties -from ._models_py3 import SBNamespace -from ._models_py3 import SBNamespaceListResult -from ._models_py3 import SBNamespaceUpdateParameters -from ._models_py3 import SBQueue -from ._models_py3 import SBQueueListResult -from ._models_py3 import SBSku -from ._models_py3 import SBSubscription -from ._models_py3 import SBSubscriptionListResult -from ._models_py3 import SBTopic -from ._models_py3 import SBTopicListResult -from ._models_py3 import SqlFilter -from ._models_py3 import SqlRuleAction -from ._models_py3 import Subnet -from ._models_py3 import SystemData -from ._models_py3 import TrackedResource -from ._models_py3 import UserAssignedIdentity -from ._models_py3 import UserAssignedIdentityProperties - -from ._service_bus_management_client_enums import AccessRights -from ._service_bus_management_client_enums import CreatedByType -from ._service_bus_management_client_enums import DefaultAction -from ._service_bus_management_client_enums import EndPointProvisioningState -from ._service_bus_management_client_enums import EntityStatus -from ._service_bus_management_client_enums import FilterType -from ._service_bus_management_client_enums import KeySource -from ._service_bus_management_client_enums import KeyType -from ._service_bus_management_client_enums import ManagedServiceIdentityType -from ._service_bus_management_client_enums import MigrationConfigurationName -from ._service_bus_management_client_enums import NetworkRuleIPAction -from ._service_bus_management_client_enums import PrivateLinkConnectionStatus -from ._service_bus_management_client_enums import ProvisioningStateDR -from ._service_bus_management_client_enums import PublicNetworkAccess -from ._service_bus_management_client_enums import PublicNetworkAccessFlag -from ._service_bus_management_client_enums import RoleDisasterRecovery -from ._service_bus_management_client_enums import SkuName -from ._service_bus_management_client_enums import SkuTier -from ._service_bus_management_client_enums import TlsVersion -from ._service_bus_management_client_enums import UnavailableReason -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "AccessKeys", - "Action", - "ArmDisasterRecovery", - "ArmDisasterRecoveryListResult", - "CheckNameAvailability", - "CheckNameAvailabilityResult", - "ConnectionState", - "CorrelationFilter", - "Encryption", - "ErrorAdditionalInfo", - "ErrorResponse", - "ErrorResponseError", - "FailoverProperties", - "Identity", - "KeyVaultProperties", - "MessageCountDetails", - "MigrationConfigListResult", - "MigrationConfigProperties", - "NWRuleSetIpRules", - "NWRuleSetVirtualNetworkRules", - "NetworkRuleSet", - "NetworkRuleSetListResult", - "Operation", - "OperationDisplay", - "OperationListResult", - "PrivateEndpoint", - "PrivateEndpointConnection", - "PrivateEndpointConnectionListResult", - "PrivateLinkResource", - "PrivateLinkResourcesListResult", - "ProxyResource", - "RegenerateAccessKeyParameters", - "Resource", - "ResourceNamespacePatch", - "Rule", - "RuleListResult", - "SBAuthorizationRule", - "SBAuthorizationRuleListResult", - "SBClientAffineProperties", - "SBNamespace", - "SBNamespaceListResult", - "SBNamespaceUpdateParameters", - "SBQueue", - "SBQueueListResult", - "SBSku", - "SBSubscription", - "SBSubscriptionListResult", - "SBTopic", - "SBTopicListResult", - "SqlFilter", - "SqlRuleAction", - "Subnet", - "SystemData", - "TrackedResource", - "UserAssignedIdentity", - "UserAssignedIdentityProperties", - "AccessRights", - "CreatedByType", - "DefaultAction", - "EndPointProvisioningState", - "EntityStatus", - "FilterType", - "KeySource", - "KeyType", - "ManagedServiceIdentityType", - "MigrationConfigurationName", - "NetworkRuleIPAction", - "PrivateLinkConnectionStatus", - "ProvisioningStateDR", - "PublicNetworkAccess", - "PublicNetworkAccessFlag", - "RoleDisasterRecovery", - "SkuName", - "SkuTier", - "TlsVersion", - "UnavailableReason", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_models_py3.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_models_py3.py deleted file mode 100644 index ad97603419c5..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_models_py3.py +++ /dev/null @@ -1,3091 +0,0 @@ -# coding=utf-8 -# pylint: disable=too-many-lines -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -import datetime -import sys -from typing import Any, Dict, List, Optional, TYPE_CHECKING, Union - -from ... import _serialization - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from .. import models as _models -JSON = MutableMapping[str, Any] # pylint: disable=unsubscriptable-object - - -class AccessKeys(_serialization.Model): - """Namespace/ServiceBus Connection String. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar primary_connection_string: Primary connection string of the created namespace - authorization rule. - :vartype primary_connection_string: str - :ivar secondary_connection_string: Secondary connection string of the created namespace - authorization rule. - :vartype secondary_connection_string: str - :ivar alias_primary_connection_string: Primary connection string of the alias if GEO DR is - enabled. - :vartype alias_primary_connection_string: str - :ivar alias_secondary_connection_string: Secondary connection string of the alias if GEO DR is - enabled. - :vartype alias_secondary_connection_string: str - :ivar primary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype primary_key: str - :ivar secondary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype secondary_key: str - :ivar key_name: A string that describes the authorization rule. - :vartype key_name: str - """ - - _validation = { - "primary_connection_string": {"readonly": True}, - "secondary_connection_string": {"readonly": True}, - "alias_primary_connection_string": {"readonly": True}, - "alias_secondary_connection_string": {"readonly": True}, - "primary_key": {"readonly": True}, - "secondary_key": {"readonly": True}, - "key_name": {"readonly": True}, - } - - _attribute_map = { - "primary_connection_string": {"key": "primaryConnectionString", "type": "str"}, - "secondary_connection_string": {"key": "secondaryConnectionString", "type": "str"}, - "alias_primary_connection_string": {"key": "aliasPrimaryConnectionString", "type": "str"}, - "alias_secondary_connection_string": {"key": "aliasSecondaryConnectionString", "type": "str"}, - "primary_key": {"key": "primaryKey", "type": "str"}, - "secondary_key": {"key": "secondaryKey", "type": "str"}, - "key_name": {"key": "keyName", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.primary_connection_string = None - self.secondary_connection_string = None - self.alias_primary_connection_string = None - self.alias_secondary_connection_string = None - self.primary_key = None - self.secondary_key = None - self.key_name = None - - -class Action(_serialization.Model): - """Represents the filter actions which are allowed for the transformation of a message that have - been matched by a filter expression. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: Optional[int] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class ProxyResource(_serialization.Model): - """Common fields that are returned in the response for all Azure Resource Manager resources. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id = None - self.name = None - self.type = None - self.location = None - - -class ArmDisasterRecovery(ProxyResource): - """Single item in List or Get Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SystemData - :ivar provisioning_state: Provisioning state of the Alias(Disaster Recovery configuration) - - possible values 'Accepted' or 'Succeeded' or 'Failed'. Known values are: "Accepted", - "Succeeded", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.ProvisioningStateDR - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is part - of GEO DR pairing. - :vartype partner_namespace: str - :ivar alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :vartype alternate_name: str - :ivar role: role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' - or 'Secondary'. Known values are: "Primary", "PrimaryNotReplicating", and "Secondary". - :vartype role: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.RoleDisasterRecovery - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "role": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "partner_namespace": {"key": "properties.partnerNamespace", "type": "str"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - "role": {"key": "properties.role", "type": "str"}, - } - - def __init__( - self, *, partner_namespace: Optional[str] = None, alternate_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is - part of GEO DR pairing. - :paramtype partner_namespace: str - :keyword alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :paramtype alternate_name: str - """ - super().__init__(**kwargs) - self.system_data = None - self.provisioning_state = None - self.pending_replication_operations_count = None - self.partner_namespace = partner_namespace - self.alternate_name = alternate_name - self.role = None - - -class ArmDisasterRecoveryListResult(_serialization.Model): - """The result of the List Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Alias(Disaster Recovery configurations). - :vartype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Alias(Disaster Recovery configuration). - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[ArmDisasterRecovery]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.ArmDisasterRecovery"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Alias(Disaster Recovery configurations). - :paramtype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class CheckNameAvailability(_serialization.Model): - """Description of a Check Name availability request properties. - - All required parameters must be populated in order to send to server. - - :ivar name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :vartype name: str - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - } - - def __init__(self, *, name: str, **kwargs: Any) -> None: - """ - :keyword name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :paramtype name: str - """ - super().__init__(**kwargs) - self.name = name - - -class CheckNameAvailabilityResult(_serialization.Model): - """Description of a Check Name availability request properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar message: The detailed info regarding the reason associated with the namespace. - :vartype message: str - :ivar name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :vartype name_available: bool - :ivar reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :vartype reason: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.UnavailableReason - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "message": {"key": "message", "type": "str"}, - "name_available": {"key": "nameAvailable", "type": "bool"}, - "reason": {"key": "reason", "type": "str"}, - } - - def __init__( - self, - *, - name_available: Optional[bool] = None, - reason: Optional[Union[str, "_models.UnavailableReason"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :paramtype name_available: bool - :keyword reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :paramtype reason: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.UnavailableReason - """ - super().__init__(**kwargs) - self.message = None - self.name_available = name_available - self.reason = reason - - -class ConnectionState(_serialization.Model): - """ConnectionState information. - - :ivar status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :vartype status: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateLinkConnectionStatus - :ivar description: Description of the connection state. - :vartype description: str - """ - - _attribute_map = { - "status": {"key": "status", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__( - self, - *, - status: Optional[Union[str, "_models.PrivateLinkConnectionStatus"]] = None, - description: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :paramtype status: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateLinkConnectionStatus - :keyword description: Description of the connection state. - :paramtype description: str - """ - super().__init__(**kwargs) - self.status = status - self.description = description - - -class CorrelationFilter(_serialization.Model): - """Represents the correlation filter expression. - - :ivar properties: dictionary object for custom filters. - :vartype properties: dict[str, str] - :ivar correlation_id: Identifier of the correlation. - :vartype correlation_id: str - :ivar message_id: Identifier of the message. - :vartype message_id: str - :ivar to: Address to send to. - :vartype to: str - :ivar reply_to: Address of the queue to reply to. - :vartype reply_to: str - :ivar label: Application specific label. - :vartype label: str - :ivar session_id: Session identifier. - :vartype session_id: str - :ivar reply_to_session_id: Session identifier to reply to. - :vartype reply_to_session_id: str - :ivar content_type: Content type of the message. - :vartype content_type: str - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "properties": {"key": "properties", "type": "{str}"}, - "correlation_id": {"key": "correlationId", "type": "str"}, - "message_id": {"key": "messageId", "type": "str"}, - "to": {"key": "to", "type": "str"}, - "reply_to": {"key": "replyTo", "type": "str"}, - "label": {"key": "label", "type": "str"}, - "session_id": {"key": "sessionId", "type": "str"}, - "reply_to_session_id": {"key": "replyToSessionId", "type": "str"}, - "content_type": {"key": "contentType", "type": "str"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - properties: Optional[Dict[str, str]] = None, - correlation_id: Optional[str] = None, - message_id: Optional[str] = None, - to: Optional[str] = None, - reply_to: Optional[str] = None, - label: Optional[str] = None, - session_id: Optional[str] = None, - reply_to_session_id: Optional[str] = None, - content_type: Optional[str] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword properties: dictionary object for custom filters. - :paramtype properties: dict[str, str] - :keyword correlation_id: Identifier of the correlation. - :paramtype correlation_id: str - :keyword message_id: Identifier of the message. - :paramtype message_id: str - :keyword to: Address to send to. - :paramtype to: str - :keyword reply_to: Address of the queue to reply to. - :paramtype reply_to: str - :keyword label: Application specific label. - :paramtype label: str - :keyword session_id: Session identifier. - :paramtype session_id: str - :keyword reply_to_session_id: Session identifier to reply to. - :paramtype reply_to_session_id: str - :keyword content_type: Content type of the message. - :paramtype content_type: str - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.properties = properties - self.correlation_id = correlation_id - self.message_id = message_id - self.to = to - self.reply_to = reply_to - self.label = label - self.session_id = session_id - self.reply_to_session_id = reply_to_session_id - self.content_type = content_type - self.requires_preprocessing = requires_preprocessing - - -class Encryption(_serialization.Model): - """Properties to configure Encryption. - - :ivar key_vault_properties: Properties of KeyVault. - :vartype key_vault_properties: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.KeyVaultProperties] - :ivar key_source: Enumerates the possible value of keySource for Encryption. - "Microsoft.KeyVault" - :vartype key_source: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.KeySource - :ivar require_infrastructure_encryption: Enable Infrastructure Encryption (Double Encryption). - :vartype require_infrastructure_encryption: bool - """ - - _attribute_map = { - "key_vault_properties": {"key": "keyVaultProperties", "type": "[KeyVaultProperties]"}, - "key_source": {"key": "keySource", "type": "str"}, - "require_infrastructure_encryption": {"key": "requireInfrastructureEncryption", "type": "bool"}, - } - - def __init__( - self, - *, - key_vault_properties: Optional[List["_models.KeyVaultProperties"]] = None, - key_source: Union[str, "_models.KeySource"] = "Microsoft.KeyVault", - require_infrastructure_encryption: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword key_vault_properties: Properties of KeyVault. - :paramtype key_vault_properties: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.KeyVaultProperties] - :keyword key_source: Enumerates the possible value of keySource for Encryption. - "Microsoft.KeyVault" - :paramtype key_source: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.KeySource - :keyword require_infrastructure_encryption: Enable Infrastructure Encryption (Double - Encryption). - :paramtype require_infrastructure_encryption: bool - """ - super().__init__(**kwargs) - self.key_vault_properties = key_vault_properties - self.key_source = key_source - self.require_infrastructure_encryption = require_infrastructure_encryption - - -class ErrorAdditionalInfo(_serialization.Model): - """The resource management error additional info. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar type: The additional info type. - :vartype type: str - :ivar info: The additional info. - :vartype info: JSON - """ - - _validation = { - "type": {"readonly": True}, - "info": {"readonly": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "info": {"key": "info", "type": "object"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.type = None - self.info = None - - -class ErrorResponse(_serialization.Model): - """The resource management error response. - - :ivar error: The error object. - :vartype error: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ErrorResponseError - """ - - _attribute_map = { - "error": {"key": "error", "type": "ErrorResponseError"}, - } - - def __init__(self, *, error: Optional["_models.ErrorResponseError"] = None, **kwargs: Any) -> None: - """ - :keyword error: The error object. - :paramtype error: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ErrorResponseError - """ - super().__init__(**kwargs) - self.error = error - - -class ErrorResponseError(_serialization.Model): - """The error object. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.ErrorResponse] - :ivar additional_info: The error additional info. - :vartype additional_info: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[ErrorResponse]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code = None - self.message = None - self.target = None - self.details = None - self.additional_info = None - - -class FailoverProperties(_serialization.Model): - """Safe failover is to indicate the service should wait for pending replication to finish before - switching to the secondary. - - :ivar is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :vartype is_safe_failover: bool - """ - - _attribute_map = { - "is_safe_failover": {"key": "properties.IsSafeFailover", "type": "bool"}, - } - - def __init__(self, *, is_safe_failover: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :paramtype is_safe_failover: bool - """ - super().__init__(**kwargs) - self.is_safe_failover = is_safe_failover - - -class Identity(_serialization.Model): - """Properties to configure User Assigned Identities for Bring your Own Keys. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar principal_id: ObjectId from the KeyVault. - :vartype principal_id: str - :ivar tenant_id: TenantId from the KeyVault. - :vartype tenant_id: str - :ivar type: Type of managed service identity. Known values are: "SystemAssigned", - "UserAssigned", "SystemAssigned, UserAssigned", and "None". - :vartype type: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.ManagedServiceIdentityType - :ivar user_assigned_identities: Properties for User Assigned Identities. - :vartype user_assigned_identities: dict[str, - ~azure.mgmt.servicebus.v2022_01_01_preview.models.UserAssignedIdentity] - """ - - _validation = { - "principal_id": {"readonly": True}, - "tenant_id": {"readonly": True}, - } - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "tenant_id": {"key": "tenantId", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "user_assigned_identities": {"key": "userAssignedIdentities", "type": "{UserAssignedIdentity}"}, - } - - def __init__( - self, - *, - type: Optional[Union[str, "_models.ManagedServiceIdentityType"]] = None, - user_assigned_identities: Optional[Dict[str, "_models.UserAssignedIdentity"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword type: Type of managed service identity. Known values are: "SystemAssigned", - "UserAssigned", "SystemAssigned, UserAssigned", and "None". - :paramtype type: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.ManagedServiceIdentityType - :keyword user_assigned_identities: Properties for User Assigned Identities. - :paramtype user_assigned_identities: dict[str, - ~azure.mgmt.servicebus.v2022_01_01_preview.models.UserAssignedIdentity] - """ - super().__init__(**kwargs) - self.principal_id = None - self.tenant_id = None - self.type = type - self.user_assigned_identities = user_assigned_identities - - -class KeyVaultProperties(_serialization.Model): - """Properties to configure keyVault Properties. - - :ivar key_name: Name of the Key from KeyVault. - :vartype key_name: str - :ivar key_vault_uri: Uri of KeyVault. - :vartype key_vault_uri: str - :ivar key_version: Version of KeyVault. - :vartype key_version: str - :ivar identity: - :vartype identity: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.UserAssignedIdentityProperties - """ - - _attribute_map = { - "key_name": {"key": "keyName", "type": "str"}, - "key_vault_uri": {"key": "keyVaultUri", "type": "str"}, - "key_version": {"key": "keyVersion", "type": "str"}, - "identity": {"key": "identity", "type": "UserAssignedIdentityProperties"}, - } - - def __init__( - self, - *, - key_name: Optional[str] = None, - key_vault_uri: Optional[str] = None, - key_version: Optional[str] = None, - identity: Optional["_models.UserAssignedIdentityProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword key_name: Name of the Key from KeyVault. - :paramtype key_name: str - :keyword key_vault_uri: Uri of KeyVault. - :paramtype key_vault_uri: str - :keyword key_version: Version of KeyVault. - :paramtype key_version: str - :keyword identity: - :paramtype identity: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.UserAssignedIdentityProperties - """ - super().__init__(**kwargs) - self.key_name = key_name - self.key_vault_uri = key_vault_uri - self.key_version = key_version - self.identity = identity - - -class MessageCountDetails(_serialization.Model): - """Message Count Details. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar active_message_count: Number of active messages in the queue, topic, or subscription. - :vartype active_message_count: int - :ivar dead_letter_message_count: Number of messages that are dead lettered. - :vartype dead_letter_message_count: int - :ivar scheduled_message_count: Number of scheduled messages. - :vartype scheduled_message_count: int - :ivar transfer_message_count: Number of messages transferred to another queue, topic, or - subscription. - :vartype transfer_message_count: int - :ivar transfer_dead_letter_message_count: Number of messages transferred into dead letters. - :vartype transfer_dead_letter_message_count: int - """ - - _validation = { - "active_message_count": {"readonly": True}, - "dead_letter_message_count": {"readonly": True}, - "scheduled_message_count": {"readonly": True}, - "transfer_message_count": {"readonly": True}, - "transfer_dead_letter_message_count": {"readonly": True}, - } - - _attribute_map = { - "active_message_count": {"key": "activeMessageCount", "type": "int"}, - "dead_letter_message_count": {"key": "deadLetterMessageCount", "type": "int"}, - "scheduled_message_count": {"key": "scheduledMessageCount", "type": "int"}, - "transfer_message_count": {"key": "transferMessageCount", "type": "int"}, - "transfer_dead_letter_message_count": {"key": "transferDeadLetterMessageCount", "type": "int"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.active_message_count = None - self.dead_letter_message_count = None - self.scheduled_message_count = None - self.transfer_message_count = None - self.transfer_dead_letter_message_count = None - - -class MigrationConfigListResult(_serialization.Model): - """The result of the List migrationConfigurations operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Migration Configs. - :vartype value: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of migrationConfigurations. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[MigrationConfigProperties]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.MigrationConfigProperties"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Migration Configs. - :paramtype value: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class MigrationConfigProperties(ProxyResource): - """Single item in List or Get Migration Config operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SystemData - :ivar provisioning_state: Provisioning state of Migration Configuration. - :vartype provisioning_state: str - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar target_namespace: Existing premium Namespace ARM Id name which has no entities, will be - used for migration. - :vartype target_namespace: str - :ivar post_migration_name: Name to access Standard Namespace after migration. - :vartype post_migration_name: str - :ivar migration_state: State in which Standard to Premium Migration is, possible values : - Unknown, Reverting, Completing, Initiating, Syncing, Active. - :vartype migration_state: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "migration_state": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "target_namespace": {"key": "properties.targetNamespace", "type": "str"}, - "post_migration_name": {"key": "properties.postMigrationName", "type": "str"}, - "migration_state": {"key": "properties.migrationState", "type": "str"}, - } - - def __init__( - self, *, target_namespace: Optional[str] = None, post_migration_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword target_namespace: Existing premium Namespace ARM Id name which has no entities, will - be used for migration. - :paramtype target_namespace: str - :keyword post_migration_name: Name to access Standard Namespace after migration. - :paramtype post_migration_name: str - """ - super().__init__(**kwargs) - self.system_data = None - self.provisioning_state = None - self.pending_replication_operations_count = None - self.target_namespace = target_namespace - self.post_migration_name = post_migration_name - self.migration_state = None - - -class NetworkRuleSet(ProxyResource): - """Description of NetworkRuleSet resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SystemData - :ivar trusted_service_access_enabled: Value that indicates whether Trusted Service Access is - Enabled or not. - :vartype trusted_service_access_enabled: bool - :ivar default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :vartype default_action: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.DefaultAction - :ivar virtual_network_rules: List VirtualNetwork Rules. - :vartype virtual_network_rules: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.NWRuleSetVirtualNetworkRules] - :ivar ip_rules: List of IpRules. - :vartype ip_rules: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.NWRuleSetIpRules] - :ivar public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled" and "Disabled". - :vartype public_network_access: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.PublicNetworkAccessFlag - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "trusted_service_access_enabled": {"key": "properties.trustedServiceAccessEnabled", "type": "bool"}, - "default_action": {"key": "properties.defaultAction", "type": "str"}, - "virtual_network_rules": {"key": "properties.virtualNetworkRules", "type": "[NWRuleSetVirtualNetworkRules]"}, - "ip_rules": {"key": "properties.ipRules", "type": "[NWRuleSetIpRules]"}, - "public_network_access": {"key": "properties.publicNetworkAccess", "type": "str"}, - } - - def __init__( - self, - *, - trusted_service_access_enabled: Optional[bool] = None, - default_action: Optional[Union[str, "_models.DefaultAction"]] = None, - virtual_network_rules: Optional[List["_models.NWRuleSetVirtualNetworkRules"]] = None, - ip_rules: Optional[List["_models.NWRuleSetIpRules"]] = None, - public_network_access: Union[str, "_models.PublicNetworkAccessFlag"] = "Enabled", - **kwargs: Any - ) -> None: - """ - :keyword trusted_service_access_enabled: Value that indicates whether Trusted Service Access is - Enabled or not. - :paramtype trusted_service_access_enabled: bool - :keyword default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :paramtype default_action: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.DefaultAction - :keyword virtual_network_rules: List VirtualNetwork Rules. - :paramtype virtual_network_rules: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.NWRuleSetVirtualNetworkRules] - :keyword ip_rules: List of IpRules. - :paramtype ip_rules: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.NWRuleSetIpRules] - :keyword public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled" and "Disabled". - :paramtype public_network_access: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.PublicNetworkAccessFlag - """ - super().__init__(**kwargs) - self.system_data = None - self.trusted_service_access_enabled = trusted_service_access_enabled - self.default_action = default_action - self.virtual_network_rules = virtual_network_rules - self.ip_rules = ip_rules - self.public_network_access = public_network_access - - -class NetworkRuleSetListResult(_serialization.Model): - """The response of the List NetworkRuleSet operation. - - :ivar value: Result of the List NetworkRuleSet operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of NetworkRuleSet. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[NetworkRuleSet]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.NetworkRuleSet"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List NetworkRuleSet operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of NetworkRuleSet. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class NWRuleSetIpRules(_serialization.Model): - """Description of NetWorkRuleSet - IpRules resource. - - :ivar ip_mask: IP Mask. - :vartype ip_mask: str - :ivar action: The IP Filter Action. "Allow" - :vartype action: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleIPAction - """ - - _attribute_map = { - "ip_mask": {"key": "ipMask", "type": "str"}, - "action": {"key": "action", "type": "str"}, - } - - def __init__( - self, - *, - ip_mask: Optional[str] = None, - action: Union[str, "_models.NetworkRuleIPAction"] = "Allow", - **kwargs: Any - ) -> None: - """ - :keyword ip_mask: IP Mask. - :paramtype ip_mask: str - :keyword action: The IP Filter Action. "Allow" - :paramtype action: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleIPAction - """ - super().__init__(**kwargs) - self.ip_mask = ip_mask - self.action = action - - -class NWRuleSetVirtualNetworkRules(_serialization.Model): - """Description of VirtualNetworkRules - NetworkRules resource. - - :ivar subnet: Subnet properties. - :vartype subnet: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Subnet - :ivar ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing VNet - Service Endpoint. - :vartype ignore_missing_vnet_service_endpoint: bool - """ - - _attribute_map = { - "subnet": {"key": "subnet", "type": "Subnet"}, - "ignore_missing_vnet_service_endpoint": {"key": "ignoreMissingVnetServiceEndpoint", "type": "bool"}, - } - - def __init__( - self, - *, - subnet: Optional["_models.Subnet"] = None, - ignore_missing_vnet_service_endpoint: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword subnet: Subnet properties. - :paramtype subnet: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Subnet - :keyword ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing - VNet Service Endpoint. - :paramtype ignore_missing_vnet_service_endpoint: bool - """ - super().__init__(**kwargs) - self.subnet = subnet - self.ignore_missing_vnet_service_endpoint = ignore_missing_vnet_service_endpoint - - -class Operation(_serialization.Model): - """A Service Bus REST API operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar name: Operation name: {provider}/{resource}/{operation}. - :vartype name: str - :ivar is_data_action: Indicates whether the operation is a data action. - :vartype is_data_action: bool - :ivar display: Display of the operation. - :vartype display: ~azure.mgmt.servicebus.v2022_01_01_preview.models.OperationDisplay - :ivar origin: Origin of the operation. - :vartype origin: str - :ivar properties: Properties of the operation. - :vartype properties: JSON - """ - - _validation = { - "name": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "is_data_action": {"key": "isDataAction", "type": "bool"}, - "display": {"key": "display", "type": "OperationDisplay"}, - "origin": {"key": "origin", "type": "str"}, - "properties": {"key": "properties", "type": "object"}, - } - - def __init__( - self, - *, - is_data_action: Optional[bool] = None, - display: Optional["_models.OperationDisplay"] = None, - origin: Optional[str] = None, - properties: Optional[JSON] = None, - **kwargs: Any - ) -> None: - """ - :keyword is_data_action: Indicates whether the operation is a data action. - :paramtype is_data_action: bool - :keyword display: Display of the operation. - :paramtype display: ~azure.mgmt.servicebus.v2022_01_01_preview.models.OperationDisplay - :keyword origin: Origin of the operation. - :paramtype origin: str - :keyword properties: Properties of the operation. - :paramtype properties: JSON - """ - super().__init__(**kwargs) - self.name = None - self.is_data_action = is_data_action - self.display = display - self.origin = origin - self.properties = properties - - -class OperationDisplay(_serialization.Model): - """Operation display payload. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provider: Resource provider of the operation. - :vartype provider: str - :ivar resource: Resource of the operation. - :vartype resource: str - :ivar operation: Localized friendly name for the operation. - :vartype operation: str - :ivar description: Localized friendly description for the operation. - :vartype description: str - """ - - _validation = { - "provider": {"readonly": True}, - "resource": {"readonly": True}, - "operation": {"readonly": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "provider": {"key": "provider", "type": "str"}, - "resource": {"key": "resource", "type": "str"}, - "operation": {"key": "operation", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.provider = None - self.resource = None - self.operation = None - self.description = None - - -class OperationListResult(_serialization.Model): - """Result of the request to list ServiceBus operations. It contains a list of operations and a URL - link to get the next set of results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of ServiceBus operations supported by the Microsoft.ServiceBus resource - provider. - :vartype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.Operation] - :ivar next_link: URL to get the next set of operation list results if there are any. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Operation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value = None - self.next_link = None - - -class PrivateEndpoint(_serialization.Model): - """PrivateEndpoint information. - - :ivar id: The ARM identifier for Private Endpoint. - :vartype id: str - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: The ARM identifier for Private Endpoint. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class PrivateEndpointConnection(ProxyResource): - """Properties of the PrivateEndpointConnection. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SystemData - :ivar private_endpoint: The Private Endpoint resource for this Connection. - :vartype private_endpoint: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpoint - :ivar private_link_service_connection_state: Details about the state of the connection. - :vartype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.ConnectionState - :ivar provisioning_state: Provisioning state of the Private Endpoint Connection. Known values - are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.EndPointProvisioningState - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "private_endpoint": {"key": "properties.privateEndpoint", "type": "PrivateEndpoint"}, - "private_link_service_connection_state": { - "key": "properties.privateLinkServiceConnectionState", - "type": "ConnectionState", - }, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - } - - def __init__( - self, - *, - private_endpoint: Optional["_models.PrivateEndpoint"] = None, - private_link_service_connection_state: Optional["_models.ConnectionState"] = None, - provisioning_state: Optional[Union[str, "_models.EndPointProvisioningState"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword private_endpoint: The Private Endpoint resource for this Connection. - :paramtype private_endpoint: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpoint - :keyword private_link_service_connection_state: Details about the state of the connection. - :paramtype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.ConnectionState - :keyword provisioning_state: Provisioning state of the Private Endpoint Connection. Known - values are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :paramtype provisioning_state: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.EndPointProvisioningState - """ - super().__init__(**kwargs) - self.system_data = None - self.private_endpoint = private_endpoint - self.private_link_service_connection_state = private_link_service_connection_state - self.provisioning_state = provisioning_state - - -class PrivateEndpointConnectionListResult(_serialization.Model): - """Result of the list of all private endpoint connections operation. - - :ivar value: A collection of private endpoint connection resources. - :vartype value: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection] - :ivar next_link: A link for the next page of private endpoint connection resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateEndpointConnection]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateEndpointConnection"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private endpoint connection resources. - :paramtype value: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection] - :keyword next_link: A link for the next page of private endpoint connection resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class PrivateLinkResource(_serialization.Model): - """Information of the private link resource. - - :ivar id: Fully qualified identifier of the resource. - :vartype id: str - :ivar name: Name of the resource. - :vartype name: str - :ivar type: Type of the resource. - :vartype type: str - :ivar group_id: - :vartype group_id: str - :ivar required_members: Required Members. - :vartype required_members: list[str] - :ivar required_zone_names: Required Zone Names. - :vartype required_zone_names: list[str] - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "group_id": {"key": "properties.groupId", "type": "str"}, - "required_members": {"key": "properties.requiredMembers", "type": "[str]"}, - "required_zone_names": {"key": "properties.requiredZoneNames", "type": "[str]"}, - } - - def __init__( - self, - *, - id: Optional[str] = None, # pylint: disable=redefined-builtin - name: Optional[str] = None, - type: Optional[str] = None, - group_id: Optional[str] = None, - required_members: Optional[List[str]] = None, - required_zone_names: Optional[List[str]] = None, - **kwargs: Any - ) -> None: - """ - :keyword id: Fully qualified identifier of the resource. - :paramtype id: str - :keyword name: Name of the resource. - :paramtype name: str - :keyword type: Type of the resource. - :paramtype type: str - :keyword group_id: - :paramtype group_id: str - :keyword required_members: Required Members. - :paramtype required_members: list[str] - :keyword required_zone_names: Required Zone Names. - :paramtype required_zone_names: list[str] - """ - super().__init__(**kwargs) - self.id = id - self.name = name - self.type = type - self.group_id = group_id - self.required_members = required_members - self.required_zone_names = required_zone_names - - -class PrivateLinkResourcesListResult(_serialization.Model): - """Result of the List private link resources operation. - - :ivar value: A collection of private link resources. - :vartype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateLinkResource] - :ivar next_link: A link for the next page of private link resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateLinkResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateLinkResource"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private link resources. - :paramtype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateLinkResource] - :keyword next_link: A link for the next page of private link resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class RegenerateAccessKeyParameters(_serialization.Model): - """Parameters supplied to the Regenerate Authorization Rule operation, specifies which key needs - to be reset. - - All required parameters must be populated in order to send to server. - - :ivar key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :vartype key_type: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.KeyType - :ivar key: Optional, if the key value provided, is reset for KeyType value or autogenerate Key - value set for keyType. - :vartype key: str - """ - - _validation = { - "key_type": {"required": True}, - } - - _attribute_map = { - "key_type": {"key": "keyType", "type": "str"}, - "key": {"key": "key", "type": "str"}, - } - - def __init__(self, *, key_type: Union[str, "_models.KeyType"], key: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :paramtype key_type: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.KeyType - :keyword key: Optional, if the key value provided, is reset for KeyType value or autogenerate - Key value set for keyType. - :paramtype key: str - """ - super().__init__(**kwargs) - self.key_type = key_type - self.key = key - - -class Resource(_serialization.Model): - """The Resource definition for other than namespace. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id = None - self.name = None - self.type = None - - -class ResourceNamespacePatch(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: Optional[str] = None, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class Rule(ProxyResource): - """Description of Rule Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SystemData - :ivar action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :vartype action: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Action - :ivar filter_type: Filter type that is evaluated against a BrokeredMessage. Known values are: - "SqlFilter" and "CorrelationFilter". - :vartype filter_type: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.FilterType - :ivar sql_filter: Properties of sqlFilter. - :vartype sql_filter: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SqlFilter - :ivar correlation_filter: Properties of correlationFilter. - :vartype correlation_filter: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.CorrelationFilter - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "action": {"key": "properties.action", "type": "Action"}, - "filter_type": {"key": "properties.filterType", "type": "str"}, - "sql_filter": {"key": "properties.sqlFilter", "type": "SqlFilter"}, - "correlation_filter": {"key": "properties.correlationFilter", "type": "CorrelationFilter"}, - } - - def __init__( - self, - *, - action: Optional["_models.Action"] = None, - filter_type: Optional[Union[str, "_models.FilterType"]] = None, - sql_filter: Optional["_models.SqlFilter"] = None, - correlation_filter: Optional["_models.CorrelationFilter"] = None, - **kwargs: Any - ) -> None: - """ - :keyword action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :paramtype action: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Action - :keyword filter_type: Filter type that is evaluated against a BrokeredMessage. Known values - are: "SqlFilter" and "CorrelationFilter". - :paramtype filter_type: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.FilterType - :keyword sql_filter: Properties of sqlFilter. - :paramtype sql_filter: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SqlFilter - :keyword correlation_filter: Properties of correlationFilter. - :paramtype correlation_filter: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.CorrelationFilter - """ - super().__init__(**kwargs) - self.system_data = None - self.action = action - self.filter_type = filter_type - self.sql_filter = sql_filter - self.correlation_filter = correlation_filter - - -class RuleListResult(_serialization.Model): - """The response of the List rule operation. - - :ivar value: Result of the List Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[Rule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.Rule"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBAuthorizationRule(ProxyResource): - """Description of a namespace authorization rule. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SystemData - :ivar rights: The rights associated with the rule. - :vartype rights: list[str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessRights] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "rights": {"key": "properties.rights", "type": "[str]"}, - } - - def __init__(self, *, rights: Optional[List[Union[str, "_models.AccessRights"]]] = None, **kwargs: Any) -> None: - """ - :keyword rights: The rights associated with the rule. - :paramtype rights: list[str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessRights] - """ - super().__init__(**kwargs) - self.system_data = None - self.rights = rights - - -class SBAuthorizationRuleListResult(_serialization.Model): - """The response to the List Namespace operation. - - :ivar value: Result of the List Authorization Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Authorization Rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBAuthorizationRule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.SBAuthorizationRule"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Authorization Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Authorization Rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBClientAffineProperties(_serialization.Model): - """Properties specific to client affine subscriptions. - - :ivar client_id: Indicates the Client ID of the application that created the client-affine - subscription. - :vartype client_id: str - :ivar is_durable: For client-affine subscriptions, this value indicates whether the - subscription is durable or not. - :vartype is_durable: bool - :ivar is_shared: For client-affine subscriptions, this value indicates whether the subscription - is shared or not. - :vartype is_shared: bool - """ - - _attribute_map = { - "client_id": {"key": "clientId", "type": "str"}, - "is_durable": {"key": "isDurable", "type": "bool"}, - "is_shared": {"key": "isShared", "type": "bool"}, - } - - def __init__( - self, - *, - client_id: Optional[str] = None, - is_durable: Optional[bool] = None, - is_shared: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword client_id: Indicates the Client ID of the application that created the client-affine - subscription. - :paramtype client_id: str - :keyword is_durable: For client-affine subscriptions, this value indicates whether the - subscription is durable or not. - :paramtype is_durable: bool - :keyword is_shared: For client-affine subscriptions, this value indicates whether the - subscription is shared or not. - :paramtype is_shared: bool - """ - super().__init__(**kwargs) - self.client_id = client_id - self.is_durable = is_durable - self.is_shared = is_shared - - -class TrackedResource(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class SBNamespace(TrackedResource): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Identity - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SystemData - :ivar minimum_tls_version: The minimum TLS version for the cluster to support, e.g. '1.2'. - Known values are: "1.0", "1.1", and "1.2". - :vartype minimum_tls_version: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.TlsVersion - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar zone_redundant: Enabling this property creates a Premium Service Bus Namespace in regions - supported availability zones. - :vartype zone_redundant: bool - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Encryption - :ivar private_endpoint_connections: List of private endpoint connections. - :vartype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection] - :ivar disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :vartype disable_local_auth: bool - :ivar alternate_name: Alternate name for namespace. - :vartype alternate_name: str - :ivar public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled", "Disabled", and "SecuredByPerimeter". - :vartype public_network_access: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.PublicNetworkAccess - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "minimum_tls_version": {"key": "properties.minimumTlsVersion", "type": "str"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "zone_redundant": {"key": "properties.zoneRedundant", "type": "bool"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - "private_endpoint_connections": { - "key": "properties.privateEndpointConnections", - "type": "[PrivateEndpointConnection]", - }, - "disable_local_auth": {"key": "properties.disableLocalAuth", "type": "bool"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - "public_network_access": {"key": "properties.publicNetworkAccess", "type": "str"}, - } - - def __init__( - self, - *, - location: str, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - minimum_tls_version: Optional[Union[str, "_models.TlsVersion"]] = None, - zone_redundant: Optional[bool] = None, - encryption: Optional["_models.Encryption"] = None, - private_endpoint_connections: Optional[List["_models.PrivateEndpointConnection"]] = None, - disable_local_auth: Optional[bool] = None, - alternate_name: Optional[str] = None, - public_network_access: Union[str, "_models.PublicNetworkAccess"] = "Enabled", - **kwargs: Any - ) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Identity - :keyword minimum_tls_version: The minimum TLS version for the cluster to support, e.g. '1.2'. - Known values are: "1.0", "1.1", and "1.2". - :paramtype minimum_tls_version: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.TlsVersion - :keyword zone_redundant: Enabling this property creates a Premium Service Bus Namespace in - regions supported availability zones. - :paramtype zone_redundant: bool - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Encryption - :keyword private_endpoint_connections: List of private endpoint connections. - :paramtype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection] - :keyword disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :paramtype disable_local_auth: bool - :keyword alternate_name: Alternate name for namespace. - :paramtype alternate_name: str - :keyword public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled", "Disabled", and "SecuredByPerimeter". - :paramtype public_network_access: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.PublicNetworkAccess - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.system_data = None - self.minimum_tls_version = minimum_tls_version - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.zone_redundant = zone_redundant - self.encryption = encryption - self.private_endpoint_connections = private_endpoint_connections - self.disable_local_auth = disable_local_auth - self.alternate_name = alternate_name - self.public_network_access = public_network_access - - -class SBNamespaceListResult(_serialization.Model): - """The response of the List Namespace operation. - - :ivar value: Result of the List Namespace operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Namespaces. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBNamespace]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBNamespace"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Namespace operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Namespaces. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBNamespaceUpdateParameters(ResourceNamespacePatch): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Identity - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Encryption - :ivar private_endpoint_connections: List of private endpoint connections. - :vartype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection] - :ivar disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :vartype disable_local_auth: bool - :ivar alternate_name: Alternate name for namespace. - :vartype alternate_name: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - "private_endpoint_connections": { - "key": "properties.privateEndpointConnections", - "type": "[PrivateEndpointConnection]", - }, - "disable_local_auth": {"key": "properties.disableLocalAuth", "type": "bool"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - encryption: Optional["_models.Encryption"] = None, - private_endpoint_connections: Optional[List["_models.PrivateEndpointConnection"]] = None, - disable_local_auth: Optional[bool] = None, - alternate_name: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Identity - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Encryption - :keyword private_endpoint_connections: List of private endpoint connections. - :paramtype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection] - :keyword disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :paramtype disable_local_auth: bool - :keyword alternate_name: Alternate name for namespace. - :paramtype alternate_name: str - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.encryption = encryption - self.private_endpoint_connections = private_endpoint_connections - self.disable_local_auth = disable_local_auth - self.alternate_name = alternate_name - - -class SBQueue(ProxyResource): # pylint: disable=too-many-instance-attributes - """Description of queue Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SystemData - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2022_01_01_preview.models.MessageCountDetails - :ivar created_at: The exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time a message was sent, or the last time there was a receive request - to this queue. - :vartype accessed_at: ~datetime.datetime - :ivar size_in_bytes: The size of the queue, in bytes. - :vartype size_in_bytes: int - :ivar message_count: The number of messages in the queue. - :vartype message_count: int - :ivar lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size of - memory allocated for the queue. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the queue. This property is only used in Premium today and default is 1024. - :vartype max_message_size_in_kilobytes: int - :ivar requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar requires_session: A value that indicates whether the queue supports the concept of - sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_message_expiration: A value that indicates whether this queue has dead - letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: The maximum delivery count. A message is automatically deadlettered - after this number of deliveries. default value is 10. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: A value that indicates whether the queue is to be partitioned across - multiple message brokers. - :vartype enable_partitioning: bool - :ivar enable_express: A value that indicates whether Express Entities are enabled. An express - queue holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "count_details": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "message_count": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "max_message_size_in_kilobytes": {"key": "properties.maxMessageSizeInKilobytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - max_message_size_in_kilobytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size - of memory allocated for the queue. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the queue. This property is only used in Premium today and default is 1024. - :paramtype max_message_size_in_kilobytes: int - :keyword requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword requires_session: A value that indicates whether the queue supports the concept of - sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_message_expiration: A value that indicates whether this queue has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: The maximum delivery count. A message is automatically - deadlettered after this number of deliveries. default value is 10. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: A value that indicates whether the queue is to be partitioned - across multiple message brokers. - :paramtype enable_partitioning: bool - :keyword enable_express: A value that indicates whether Express Entities are enabled. An - express queue holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - """ - super().__init__(**kwargs) - self.system_data = None - self.count_details = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.size_in_bytes = None - self.message_count = None - self.lock_duration = lock_duration - self.max_size_in_megabytes = max_size_in_megabytes - self.max_message_size_in_kilobytes = max_message_size_in_kilobytes - self.requires_duplicate_detection = requires_duplicate_detection - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - - -class SBQueueListResult(_serialization.Model): - """The response to the List Queues operation. - - :ivar value: Result of the List Queues operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of queues. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBQueue]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBQueue"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Queues operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of queues. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBSku(_serialization.Model): - """SKU of the namespace. - - All required parameters must be populated in order to send to server. - - :ivar name: Name of this SKU. Required. Known values are: "Basic", "Standard", and "Premium". - :vartype name: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.SkuName - :ivar tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", and - "Premium". - :vartype tier: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.SkuTier - :ivar capacity: The specified messaging units for the tier. For Premium tier, capacity are 1,2 - and 4. - :vartype capacity: int - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "tier": {"key": "tier", "type": "str"}, - "capacity": {"key": "capacity", "type": "int"}, - } - - def __init__( - self, - *, - name: Union[str, "_models.SkuName"], - tier: Optional[Union[str, "_models.SkuTier"]] = None, - capacity: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Name of this SKU. Required. Known values are: "Basic", "Standard", and - "Premium". - :paramtype name: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.SkuName - :keyword tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", - and "Premium". - :paramtype tier: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.SkuTier - :keyword capacity: The specified messaging units for the tier. For Premium tier, capacity are - 1,2 and 4. - :paramtype capacity: int - """ - super().__init__(**kwargs) - self.name = name - self.tier = tier - self.capacity = capacity - - -class SBSubscription(ProxyResource): # pylint: disable=too-many-instance-attributes - """Description of subscription resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SystemData - :ivar message_count: Number of messages. - :vartype message_count: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar accessed_at: Last time there was a receive request to this subscription. - :vartype accessed_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2022_01_01_preview.models.MessageCountDetails - :ivar lock_duration: ISO 8061 lock duration timespan for the subscription. The default value is - 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar requires_session: Value indicating if a subscription supports the concept of sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :vartype dead_lettering_on_filter_evaluation_exceptions: bool - :ivar dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: Number of maximum deliveries. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - :ivar is_client_affine: Value that indicates whether the subscription has an affinity to the - client id. - :vartype is_client_affine: bool - :ivar client_affine_properties: Properties specific to client affine subscriptions. - :vartype client_affine_properties: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBClientAffineProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "message_count": {"readonly": True}, - "created_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_filter_evaluation_exceptions": { - "key": "properties.deadLetteringOnFilterEvaluationExceptions", - "type": "bool", - }, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - "is_client_affine": {"key": "properties.isClientAffine", "type": "bool"}, - "client_affine_properties": {"key": "properties.clientAffineProperties", "type": "SBClientAffineProperties"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_filter_evaluation_exceptions: Optional[bool] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - is_client_affine: Optional[bool] = None, - client_affine_properties: Optional["_models.SBClientAffineProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8061 lock duration timespan for the subscription. The default value - is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword requires_session: Value indicating if a subscription supports the concept of sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :paramtype dead_lettering_on_filter_evaluation_exceptions: bool - :keyword dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: Number of maximum deliveries. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - :keyword is_client_affine: Value that indicates whether the subscription has an affinity to the - client id. - :paramtype is_client_affine: bool - :keyword client_affine_properties: Properties specific to client affine subscriptions. - :paramtype client_affine_properties: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBClientAffineProperties - """ - super().__init__(**kwargs) - self.system_data = None - self.message_count = None - self.created_at = None - self.accessed_at = None - self.updated_at = None - self.count_details = None - self.lock_duration = lock_duration - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_filter_evaluation_exceptions = dead_lettering_on_filter_evaluation_exceptions - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - self.is_client_affine = is_client_affine - self.client_affine_properties = client_affine_properties - - -class SBSubscriptionListResult(_serialization.Model): - """The response to the List Subscriptions operation. - - :ivar value: Result of the List Subscriptions operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of subscriptions. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBSubscription]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBSubscription"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Subscriptions operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of subscriptions. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBTopic(ProxyResource): # pylint: disable=too-many-instance-attributes - """Description of topic resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SystemData - :ivar size_in_bytes: Size of the topic, in bytes. - :vartype size_in_bytes: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time the message was sent, or a request was received, for this topic. - :vartype accessed_at: ~datetime.datetime - :ivar subscription_count: Number of subscriptions. - :vartype subscription_count: int - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2022_01_01_preview.models.MessageCountDetails - :ivar default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of the - memory allocated for the topic. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the topic. This property is only used in Premium today and default is 1024. - :vartype max_message_size_in_kilobytes: int - :ivar requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.EntityStatus - :ivar support_ordering: Value that indicates whether the topic supports ordering. - :vartype support_ordering: bool - :ivar auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :vartype enable_partitioning: bool - :ivar enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "subscription_count": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "subscription_count": {"key": "properties.subscriptionCount", "type": "int"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "max_message_size_in_kilobytes": {"key": "properties.maxMessageSizeInKilobytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "status": {"key": "properties.status", "type": "str"}, - "support_ordering": {"key": "properties.supportOrdering", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - } - - def __init__( - self, - *, - default_message_time_to_live: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - max_message_size_in_kilobytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - enable_batched_operations: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - support_ordering: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of - the memory allocated for the topic. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the topic. This property is only used in Premium today and default is 1024. - :paramtype max_message_size_in_kilobytes: int - :keyword requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2022_01_01_preview.models.EntityStatus - :keyword support_ordering: Value that indicates whether the topic supports ordering. - :paramtype support_ordering: bool - :keyword auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :paramtype enable_partitioning: bool - :keyword enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - """ - super().__init__(**kwargs) - self.system_data = None - self.size_in_bytes = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.subscription_count = None - self.count_details = None - self.default_message_time_to_live = default_message_time_to_live - self.max_size_in_megabytes = max_size_in_megabytes - self.max_message_size_in_kilobytes = max_message_size_in_kilobytes - self.requires_duplicate_detection = requires_duplicate_detection - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.enable_batched_operations = enable_batched_operations - self.status = status - self.support_ordering = support_ordering - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - - -class SBTopicListResult(_serialization.Model): - """The response to the List Topics operation. - - :ivar value: Result of the List Topics operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of topics. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBTopic]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBTopic"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Topics operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of topics. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SqlFilter(_serialization.Model): - """Represents a filter which is a composition of an expression and an action that is executed in - the pub/sub pipeline. - - :ivar sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: Optional[int] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class SqlRuleAction(Action): - """Represents set of actions written in SQL language-based syntax that is performed against a - ServiceBus.Messaging.BrokeredMessage. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - -class Subnet(_serialization.Model): - """Properties supplied for Subnet. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource ID of Virtual Network Subnet. Required. - :vartype id: str - """ - - _validation = { - "id": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: str, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: Resource ID of Virtual Network Subnet. Required. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class SystemData(_serialization.Model): - """Metadata pertaining to creation and last modification of the resource. - - :ivar created_by: The identity that created the resource. - :vartype created_by: str - :ivar created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :vartype created_by_type: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.CreatedByType - :ivar created_at: The timestamp of resource creation (UTC). - :vartype created_at: ~datetime.datetime - :ivar last_modified_by: The identity that last modified the resource. - :vartype last_modified_by: str - :ivar last_modified_by_type: The type of identity that last modified the resource. Known values - are: "User", "Application", "ManagedIdentity", and "Key". - :vartype last_modified_by_type: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.CreatedByType - :ivar last_modified_at: The type of identity that last modified the resource. - :vartype last_modified_at: ~datetime.datetime - """ - - _attribute_map = { - "created_by": {"key": "createdBy", "type": "str"}, - "created_by_type": {"key": "createdByType", "type": "str"}, - "created_at": {"key": "createdAt", "type": "iso-8601"}, - "last_modified_by": {"key": "lastModifiedBy", "type": "str"}, - "last_modified_by_type": {"key": "lastModifiedByType", "type": "str"}, - "last_modified_at": {"key": "lastModifiedAt", "type": "iso-8601"}, - } - - def __init__( - self, - *, - created_by: Optional[str] = None, - created_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - created_at: Optional[datetime.datetime] = None, - last_modified_by: Optional[str] = None, - last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - last_modified_at: Optional[datetime.datetime] = None, - **kwargs: Any - ) -> None: - """ - :keyword created_by: The identity that created the resource. - :paramtype created_by: str - :keyword created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :paramtype created_by_type: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.CreatedByType - :keyword created_at: The timestamp of resource creation (UTC). - :paramtype created_at: ~datetime.datetime - :keyword last_modified_by: The identity that last modified the resource. - :paramtype last_modified_by: str - :keyword last_modified_by_type: The type of identity that last modified the resource. Known - values are: "User", "Application", "ManagedIdentity", and "Key". - :paramtype last_modified_by_type: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.CreatedByType - :keyword last_modified_at: The type of identity that last modified the resource. - :paramtype last_modified_at: ~datetime.datetime - """ - super().__init__(**kwargs) - self.created_by = created_by - self.created_by_type = created_by_type - self.created_at = created_at - self.last_modified_by = last_modified_by - self.last_modified_by_type = last_modified_by_type - self.last_modified_at = last_modified_at - - -class UserAssignedIdentity(_serialization.Model): - """Recognized Dictionary value. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar principal_id: Principal Id of user assigned identity. - :vartype principal_id: str - :ivar client_id: Client Id of user assigned identity. - :vartype client_id: str - """ - - _validation = { - "principal_id": {"readonly": True}, - "client_id": {"readonly": True}, - } - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "client_id": {"key": "clientId", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.principal_id = None - self.client_id = None - - -class UserAssignedIdentityProperties(_serialization.Model): - """UserAssignedIdentityProperties. - - :ivar user_assigned_identity: ARM ID of user Identity selected for encryption. - :vartype user_assigned_identity: str - """ - - _attribute_map = { - "user_assigned_identity": {"key": "userAssignedIdentity", "type": "str"}, - } - - def __init__(self, *, user_assigned_identity: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword user_assigned_identity: ARM ID of user Identity selected for encryption. - :paramtype user_assigned_identity: str - """ - super().__init__(**kwargs) - self.user_assigned_identity = user_assigned_identity diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_service_bus_management_client_enums.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_service_bus_management_client_enums.py deleted file mode 100644 index 3bbabd34856a..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/models/_service_bus_management_client_enums.py +++ /dev/null @@ -1,179 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from enum import Enum -from azure.core import CaseInsensitiveEnumMeta - - -class AccessRights(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """AccessRights.""" - - MANAGE = "Manage" - SEND = "Send" - LISTEN = "Listen" - - -class CreatedByType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The type of identity that created the resource.""" - - USER = "User" - APPLICATION = "Application" - MANAGED_IDENTITY = "ManagedIdentity" - KEY = "Key" - - -class DefaultAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Default Action for Network Rule Set.""" - - ALLOW = "Allow" - DENY = "Deny" - - -class EndPointProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Private Endpoint Connection.""" - - CREATING = "Creating" - UPDATING = "Updating" - DELETING = "Deleting" - SUCCEEDED = "Succeeded" - CANCELED = "Canceled" - FAILED = "Failed" - - -class EntityStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Entity status.""" - - ACTIVE = "Active" - DISABLED = "Disabled" - RESTORING = "Restoring" - SEND_DISABLED = "SendDisabled" - RECEIVE_DISABLED = "ReceiveDisabled" - CREATING = "Creating" - DELETING = "Deleting" - RENAMING = "Renaming" - UNKNOWN = "Unknown" - - -class FilterType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Rule filter types.""" - - SQL_FILTER = "SqlFilter" - CORRELATION_FILTER = "CorrelationFilter" - - -class KeySource(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Enumerates the possible value of keySource for Encryption.""" - - MICROSOFT_KEY_VAULT = "Microsoft.KeyVault" - - -class KeyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The access key to regenerate.""" - - PRIMARY_KEY = "PrimaryKey" - SECONDARY_KEY = "SecondaryKey" - - -class ManagedServiceIdentityType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Type of managed service identity.""" - - SYSTEM_ASSIGNED = "SystemAssigned" - USER_ASSIGNED = "UserAssigned" - SYSTEM_ASSIGNED_USER_ASSIGNED = "SystemAssigned, UserAssigned" - NONE = "None" - - -class MigrationConfigurationName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """MigrationConfigurationName.""" - - _DEFAULT = "$default" - - -class NetworkRuleIPAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The IP Filter Action.""" - - ALLOW = "Allow" - - -class PrivateLinkConnectionStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Status of the connection.""" - - PENDING = "Pending" - APPROVED = "Approved" - REJECTED = "Rejected" - DISCONNECTED = "Disconnected" - - -class ProvisioningStateDR(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Alias(Disaster Recovery configuration) - possible values 'Accepted' - or 'Succeeded' or 'Failed'. - """ - - ACCEPTED = "Accepted" - SUCCEEDED = "Succeeded" - FAILED = "Failed" - - -class PublicNetworkAccess(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """This determines if traffic is allowed over public network. By default it is enabled.""" - - ENABLED = "Enabled" - DISABLED = "Disabled" - SECURED_BY_PERIMETER = "SecuredByPerimeter" - - -class PublicNetworkAccessFlag(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """This determines if traffic is allowed over public network. By default it is enabled.""" - - ENABLED = "Enabled" - DISABLED = "Disabled" - - -class RoleDisasterRecovery(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' or - 'Secondary'. - """ - - PRIMARY = "Primary" - PRIMARY_NOT_REPLICATING = "PrimaryNotReplicating" - SECONDARY = "Secondary" - - -class SkuName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Name of this SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class SkuTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The billing tier of this particular SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class TlsVersion(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The minimum TLS version for the cluster to support, e.g. '1.2'.""" - - ONE0 = "1.0" - ONE1 = "1.1" - ONE2 = "1.2" - - -class UnavailableReason(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Specifies the reason for the unavailability of the service.""" - - NONE = "None" - INVALID_NAME = "InvalidName" - SUBSCRIPTION_IS_DISABLED = "SubscriptionIsDisabled" - NAME_IN_USE = "NameInUse" - NAME_IN_LOCKDOWN = "NameInLockdown" - TOO_MANY_NAMESPACE_IN_CURRENT_SUBSCRIPTION = "TooManyNamespaceInCurrentSubscription" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/__init__.py deleted file mode 100644 index e5431803c533..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/__init__.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._operations import Operations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._rules_operations import RulesOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "Operations", - "DisasterRecoveryConfigsOperations", - "MigrationConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "RulesOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index 30af7fc92efa..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,1333 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_break_pairing_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/breakPairing", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_fail_over_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/failover", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_check_name_availability_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/CheckNameAvailability", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery or - IO[bytes] - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.FailoverProperties or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_migration_configs_operations.py deleted file mode 100644 index 938acc3f4bba..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_migration_configs_operations.py +++ /dev/null @@ -1,852 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_and_start_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_complete_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/upgrade", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_revert_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/revert", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties - or IO[bytes] - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_01_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_namespaces_operations.py deleted file mode 100644 index 9cf9bb35c43d..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_namespaces_operations.py +++ /dev/null @@ -1,2242 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/namespaces") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_network_rule_set_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_network_rule_set_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_network_rule_sets_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_check_name_availability_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/CheckNameAvailability" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace or IO[bytes] - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _delete_initial(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> LROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespaceUpdateParameters - or IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_operations.py deleted file mode 100644 index b4b603bf00c5..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_operations.py +++ /dev/null @@ -1,156 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.ServiceBus/operations") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index 5abe750ce396..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,644 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - or IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> LROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_private_link_resources_operations.py deleted file mode 100644 index ffcdc00ecb8b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,153 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateLinkResources", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_queues_operations.py deleted file mode 100644 index 1dca08e4a042..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_queues_operations.py +++ /dev/null @@ -1,1453 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_rules_operations.py deleted file mode 100644 index dc0b56759a1d..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_rules_operations.py +++ /dev/null @@ -1,648 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscriptions_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_subscriptions_operations.py deleted file mode 100644 index 604f66bf798d..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_subscriptions_operations.py +++ /dev/null @@ -1,627 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_topic_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_topics_operations.py deleted file mode 100644 index 71c448cbe59d..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/operations/_topics_operations.py +++ /dev/null @@ -1,1462 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-01-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_01_01_preview.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_01_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_01_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-01-01-preview") - ) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/py.typed b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/py.typed deleted file mode 100644 index e5aff4f83af8..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_01_01_preview/py.typed +++ /dev/null @@ -1 +0,0 @@ -# Marker file for PEP 561. \ No newline at end of file diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/__init__.py deleted file mode 100644 index 2e171d69863b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/__init__.py +++ /dev/null @@ -1,26 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient -from ._version import VERSION - -__version__ = VERSION - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_configuration.py deleted file mode 100644 index e4ffd4c7dc64..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy - -from ._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2022-10-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2022-10-01-preview") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.RedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.RetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = ARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_metadata.json b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_metadata.json deleted file mode 100644 index 5b3fee4a0d66..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_metadata.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "chosen_version": "2022-10-01-preview", - "total_api_version_list": ["2022-10-01-preview"], - "client": { - "name": "ServiceBusManagementClient", - "filename": "_service_bus_management_client", - "description": "Azure Service Bus client for managing Namespace.", - "host_value": "\"https://management.azure.com\"", - "parameterized_host_template": null, - "azure_arm": true, - "has_public_lro_operations": true, - "client_side_validation": false, - "sync_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"ARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \".._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"conditional\": {\"stdlib\": {\"typing\": [\"Any\", \"Optional\"]}}, \"regular\": {\"sdkcore\": {\"azure.mgmt.core\": [\"AsyncARMPipelineClient\"], \"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"AsyncARMAutoResourceProviderRegistrationPolicy\"], \"azure.profiles\": [\"KnownProfiles\", \"ProfileDefinition\"], \"azure.profiles.multiapiclient\": [\"MultiApiClientMixin\"]}, \"local\": {\"._configuration\": [\"ServiceBusManagementClientConfiguration\"], \"..._serialization\": [\"Deserializer\", \"Serializer\"]}, \"stdlib\": {\"typing_extensions\": [\"Self\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "global_parameters": { - "sync": { - "credential": { - "signature": "credential: \"TokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials.TokenCredential", - "required": true, - "method_location": "positional" - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true, - "method_location": "positional" - } - }, - "async": { - "credential": { - "signature": "credential: \"AsyncTokenCredential\",", - "description": "Credential needed for the client to connect to Azure. Required.", - "docstring_type": "~azure.core.credentials_async.AsyncTokenCredential", - "required": true - }, - "subscription_id": { - "signature": "subscription_id: str,", - "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. Required.", - "docstring_type": "str", - "required": true - } - }, - "constant": { - }, - "call": "credential, subscription_id", - "service_client_specific": { - "sync": { - "api_version": { - "signature": "api_version: Optional[str]=None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles=KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - }, - "async": { - "api_version": { - "signature": "api_version: Optional[str] = None,", - "description": "API version to use if no profile is provided, or if missing in profile.", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "base_url": { - "signature": "base_url: str = \"https://management.azure.com\",", - "description": "Service URL", - "docstring_type": "str", - "required": false, - "method_location": "positional" - }, - "profile": { - "signature": "profile: KnownProfiles = KnownProfiles.default,", - "description": "A profile definition, from KnownProfiles to dict.", - "docstring_type": "azure.profiles.KnownProfiles", - "required": false, - "method_location": "positional" - } - } - } - }, - "config": { - "credential": true, - "credential_scopes": ["https://management.azure.com/.default"], - "credential_call_sync": "ARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "credential_call_async": "AsyncARMChallengeAuthenticationPolicy(self.credential, *self.credential_scopes, **kwargs)", - "sync_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMChallengeAuthenticationPolicy\", \"ARMHttpLoggingPolicy\"]}, \"local\": {\"._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials\": [\"TokenCredential\"]}}}", - "async_imports": "{\"regular\": {\"sdkcore\": {\"azure.core.pipeline\": [\"policies\"], \"azure.mgmt.core.policies\": [\"ARMHttpLoggingPolicy\", \"AsyncARMChallengeAuthenticationPolicy\"]}, \"local\": {\".._version\": [\"VERSION\"]}}, \"conditional\": {\"stdlib\": {\"typing\": [\"Any\"]}}, \"typing\": {\"sdkcore\": {\"azure.core.credentials_async\": [\"AsyncTokenCredential\"]}}}" - }, - "operation_groups": { - "namespaces": "NamespacesOperations", - "private_endpoint_connections": "PrivateEndpointConnectionsOperations", - "private_link_resources": "PrivateLinkResourcesOperations", - "operations": "Operations", - "disaster_recovery_configs": "DisasterRecoveryConfigsOperations", - "migration_configs": "MigrationConfigsOperations", - "queues": "QueuesOperations", - "topics": "TopicsOperations", - "rules": "RulesOperations", - "subscriptions": "SubscriptionsOperations" - } -} diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_service_bus_management_client.py deleted file mode 100644 index eb8db69188b7..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_service_bus_management_client.py +++ /dev/null @@ -1,176 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import HttpRequest, HttpResponse -from azure.mgmt.core import ARMPipelineClient -from azure.mgmt.core.policies import ARMAutoResourceProviderRegistrationPolicy - -from . import models as _models -from .._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials import TokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: azure.mgmt.servicebus.v2022_10_01_preview.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2022_10_01_preview.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2022_10_01_preview.operations.PrivateLinkResourcesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2022_10_01_preview.operations.Operations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2022_10_01_preview.operations.DisasterRecoveryConfigsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2022_10_01_preview.operations.MigrationConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2022_10_01_preview.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2022_10_01_preview.operations.TopicsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2022_10_01_preview.operations.RulesOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2022_10_01_preview.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2022-10-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "TokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - ARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: ARMPipelineClient = ARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.operations = Operations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.queues = QueuesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.topics = TopicsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.rules = RulesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - - def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.HttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - def close(self) -> None: - self._client.close() - - def __enter__(self) -> Self: - self._client.__enter__() - return self - - def __exit__(self, *exc_details: Any) -> None: - self._client.__exit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_version.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_version.py deleted file mode 100644 index 22d4eb39aa93..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/_version.py +++ /dev/null @@ -1,9 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -VERSION = "8.2.1" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/__init__.py deleted file mode 100644 index 530b8638dfd3..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._service_bus_management_client import ServiceBusManagementClient - -try: - from ._patch import __all__ as _patch_all - from ._patch import * # pylint: disable=unused-wildcard-import -except ImportError: - _patch_all = [] -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "ServiceBusManagementClient", -] -__all__.extend([p for p in _patch_all if p not in __all__]) - -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_configuration.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_configuration.py deleted file mode 100644 index ee4129139810..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_configuration.py +++ /dev/null @@ -1,66 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from typing import Any, TYPE_CHECKING - -from azure.core.pipeline import policies -from azure.mgmt.core.policies import ARMHttpLoggingPolicy, AsyncARMChallengeAuthenticationPolicy - -from .._version import VERSION - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClientConfiguration: # pylint: disable=too-many-instance-attributes,name-too-long - """Configuration for ServiceBusManagementClient. - - Note that all parameters used to create this instance are saved as instance - attributes. - - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :keyword api_version: Api Version. Default value is "2022-10-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - """ - - def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **kwargs: Any) -> None: - api_version: str = kwargs.pop("api_version", "2022-10-01-preview") - - if credential is None: - raise ValueError("Parameter 'credential' must not be None.") - if subscription_id is None: - raise ValueError("Parameter 'subscription_id' must not be None.") - - self.credential = credential - self.subscription_id = subscription_id - self.api_version = api_version - self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) - kwargs.setdefault("sdk_moniker", "mgmt-servicebus/{}".format(VERSION)) - self.polling_interval = kwargs.get("polling_interval", 30) - self._configure(**kwargs) - - def _configure(self, **kwargs: Any) -> None: - self.user_agent_policy = kwargs.get("user_agent_policy") or policies.UserAgentPolicy(**kwargs) - self.headers_policy = kwargs.get("headers_policy") or policies.HeadersPolicy(**kwargs) - self.proxy_policy = kwargs.get("proxy_policy") or policies.ProxyPolicy(**kwargs) - self.logging_policy = kwargs.get("logging_policy") or policies.NetworkTraceLoggingPolicy(**kwargs) - self.http_logging_policy = kwargs.get("http_logging_policy") or ARMHttpLoggingPolicy(**kwargs) - self.custom_hook_policy = kwargs.get("custom_hook_policy") or policies.CustomHookPolicy(**kwargs) - self.redirect_policy = kwargs.get("redirect_policy") or policies.AsyncRedirectPolicy(**kwargs) - self.retry_policy = kwargs.get("retry_policy") or policies.AsyncRetryPolicy(**kwargs) - self.authentication_policy = kwargs.get("authentication_policy") - if self.credential and not self.authentication_policy: - self.authentication_policy = AsyncARMChallengeAuthenticationPolicy( - self.credential, *self.credential_scopes, **kwargs - ) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_service_bus_management_client.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_service_bus_management_client.py deleted file mode 100644 index 0d0c83c2240d..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/_service_bus_management_client.py +++ /dev/null @@ -1,179 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from copy import deepcopy -from typing import Any, Awaitable, TYPE_CHECKING -from typing_extensions import Self - -from azure.core.pipeline import policies -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.mgmt.core import AsyncARMPipelineClient -from azure.mgmt.core.policies import AsyncARMAutoResourceProviderRegistrationPolicy - -from .. import models as _models -from ..._serialization import Deserializer, Serializer -from ._configuration import ServiceBusManagementClientConfiguration -from .operations import ( - DisasterRecoveryConfigsOperations, - MigrationConfigsOperations, - NamespacesOperations, - Operations, - PrivateEndpointConnectionsOperations, - PrivateLinkResourcesOperations, - QueuesOperations, - RulesOperations, - SubscriptionsOperations, - TopicsOperations, -) - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from azure.core.credentials_async import AsyncTokenCredential - - -class ServiceBusManagementClient: # pylint: disable=client-accepts-api-version-keyword,too-many-instance-attributes - """Azure Service Bus client for managing Namespace. - - :ivar namespaces: NamespacesOperations operations - :vartype namespaces: - azure.mgmt.servicebus.v2022_10_01_preview.aio.operations.NamespacesOperations - :ivar private_endpoint_connections: PrivateEndpointConnectionsOperations operations - :vartype private_endpoint_connections: - azure.mgmt.servicebus.v2022_10_01_preview.aio.operations.PrivateEndpointConnectionsOperations - :ivar private_link_resources: PrivateLinkResourcesOperations operations - :vartype private_link_resources: - azure.mgmt.servicebus.v2022_10_01_preview.aio.operations.PrivateLinkResourcesOperations - :ivar operations: Operations operations - :vartype operations: azure.mgmt.servicebus.v2022_10_01_preview.aio.operations.Operations - :ivar disaster_recovery_configs: DisasterRecoveryConfigsOperations operations - :vartype disaster_recovery_configs: - azure.mgmt.servicebus.v2022_10_01_preview.aio.operations.DisasterRecoveryConfigsOperations - :ivar migration_configs: MigrationConfigsOperations operations - :vartype migration_configs: - azure.mgmt.servicebus.v2022_10_01_preview.aio.operations.MigrationConfigsOperations - :ivar queues: QueuesOperations operations - :vartype queues: azure.mgmt.servicebus.v2022_10_01_preview.aio.operations.QueuesOperations - :ivar topics: TopicsOperations operations - :vartype topics: azure.mgmt.servicebus.v2022_10_01_preview.aio.operations.TopicsOperations - :ivar rules: RulesOperations operations - :vartype rules: azure.mgmt.servicebus.v2022_10_01_preview.aio.operations.RulesOperations - :ivar subscriptions: SubscriptionsOperations operations - :vartype subscriptions: - azure.mgmt.servicebus.v2022_10_01_preview.aio.operations.SubscriptionsOperations - :param credential: Credential needed for the client to connect to Azure. Required. - :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: Subscription credentials that uniquely identify a Microsoft Azure - subscription. The subscription ID forms part of the URI for every service call. Required. - :type subscription_id: str - :param base_url: Service URL. Default value is "https://management.azure.com". - :type base_url: str - :keyword api_version: Api Version. Default value is "2022-10-01-preview". Note that overriding - this default value may result in unsupported behavior. - :paramtype api_version: str - :keyword int polling_interval: Default waiting time between two polls for LRO operations if no - Retry-After header is present. - """ - - def __init__( - self, - credential: "AsyncTokenCredential", - subscription_id: str, - base_url: str = "https://management.azure.com", - **kwargs: Any - ) -> None: - self._config = ServiceBusManagementClientConfiguration( - credential=credential, subscription_id=subscription_id, **kwargs - ) - _policies = kwargs.pop("policies", None) - if _policies is None: - _policies = [ - policies.RequestIdPolicy(**kwargs), - self._config.headers_policy, - self._config.user_agent_policy, - self._config.proxy_policy, - policies.ContentDecodePolicy(**kwargs), - AsyncARMAutoResourceProviderRegistrationPolicy(), - self._config.redirect_policy, - self._config.retry_policy, - self._config.authentication_policy, - self._config.custom_hook_policy, - self._config.logging_policy, - policies.DistributedTracingPolicy(**kwargs), - policies.SensitiveHeaderCleanupPolicy(**kwargs) if self._config.redirect_policy else None, - self._config.http_logging_policy, - ] - self._client: AsyncARMPipelineClient = AsyncARMPipelineClient(base_url=base_url, policies=_policies, **kwargs) - - client_models = {k: v for k, v in _models.__dict__.items() if isinstance(v, type)} - self._serialize = Serializer(client_models) - self._deserialize = Deserializer(client_models) - self._serialize.client_side_validation = False - self.namespaces = NamespacesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.private_endpoint_connections = PrivateEndpointConnectionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.private_link_resources = PrivateLinkResourcesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.operations = Operations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.disaster_recovery_configs = DisasterRecoveryConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.migration_configs = MigrationConfigsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.queues = QueuesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.topics = TopicsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.rules = RulesOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - self.subscriptions = SubscriptionsOperations( - self._client, self._config, self._serialize, self._deserialize, "2022-10-01-preview" - ) - - def _send_request( - self, request: HttpRequest, *, stream: bool = False, **kwargs: Any - ) -> Awaitable[AsyncHttpResponse]: - """Runs the network request through the client's chained policies. - - >>> from azure.core.rest import HttpRequest - >>> request = HttpRequest("GET", "https://www.example.org/") - - >>> response = await client._send_request(request) - - - For more information on this code flow, see https://aka.ms/azsdk/dpcodegen/python/send_request - - :param request: The network request you want to make. Required. - :type request: ~azure.core.rest.HttpRequest - :keyword bool stream: Whether the response payload will be streamed. Defaults to False. - :return: The response of your network call. Does not do error handling on your response. - :rtype: ~azure.core.rest.AsyncHttpResponse - """ - - request_copy = deepcopy(request) - request_copy.url = self._client.format_url(request_copy.url) - return self._client.send_request(request_copy, stream=stream, **kwargs) # type: ignore - - async def close(self) -> None: - await self._client.close() - - async def __aenter__(self) -> Self: - await self._client.__aenter__() - return self - - async def __aexit__(self, *exc_details: Any) -> None: - await self._client.__aexit__(*exc_details) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/__init__.py deleted file mode 100644 index e5431803c533..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/__init__.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._operations import Operations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._rules_operations import RulesOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "Operations", - "DisasterRecoveryConfigsOperations", - "MigrationConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "RulesOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index f660fa565282..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,979 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._disaster_recovery_configs_operations import ( - build_break_pairing_request, - build_check_name_availability_request, - build_create_or_update_request, - build_delete_request, - build_fail_over_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_keys_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.aio.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery or - IO[bytes] - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.FailoverProperties or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_migration_configs_operations.py deleted file mode 100644 index b875b43489d4..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_migration_configs_operations.py +++ /dev/null @@ -1,631 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._migration_configs_operations import ( - build_complete_migration_request, - build_create_and_start_migration_request, - build_delete_request, - build_get_request, - build_list_request, - build_revert_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.aio.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties - or IO[bytes] - :return: An instance of AsyncLROPoller that returns either MigrationConfigProperties or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_namespaces_operations.py deleted file mode 100644 index e09086bd8b97..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_namespaces_operations.py +++ /dev/null @@ -1,1717 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._namespaces_operations import ( - build_check_name_availability_request, - build_create_or_update_authorization_rule_request, - build_create_or_update_network_rule_set_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_network_rule_set_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_resource_group_request, - build_list_keys_request, - build_list_network_rule_sets_request, - build_list_request, - build_regenerate_keys_request, - build_update_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.aio.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> AsyncIterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - async def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace or IO[bytes] - :return: An instance of AsyncLROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> AsyncLROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespaceUpdateParameters - or IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_operations.py deleted file mode 100644 index 4f21e814cbb8..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_operations.py +++ /dev/null @@ -1,134 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, AsyncIterable, Callable, Dict, Optional, Type, TypeVar -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._operations import build_list_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.aio.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index d53dd59e85cb..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,491 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling - -from ... import models as _models -from ...operations._private_endpoint_connections_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.aio.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> AsyncIterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - or IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - async def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - await response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> AsyncLROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of AsyncLROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = await self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - await raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: AsyncPollingMethod = cast(AsyncPollingMethod, AsyncARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_private_link_resources_operations.py deleted file mode 100644 index 848f8d47fd58..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,117 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._private_link_resources_operations import build_get_request - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.aio.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_queues_operations.py deleted file mode 100644 index 47ba28315bec..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_queues_operations.py +++ /dev/null @@ -1,1067 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._queues_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.aio.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_rules_operations.py deleted file mode 100644 index 6a68b8e18f0b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_rules_operations.py +++ /dev/null @@ -1,476 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._rules_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_subscriptions_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.aio.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_subscriptions_operations.py deleted file mode 100644 index 4d7d506834dc..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_subscriptions_operations.py +++ /dev/null @@ -1,462 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._subscriptions_operations import ( - build_create_or_update_request, - build_delete_request, - build_get_request, - build_list_by_topic_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.aio.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_topics_operations.py deleted file mode 100644 index 664c27fa6962..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/aio/operations/_topics_operations.py +++ /dev/null @@ -1,1076 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, AsyncIterable, Callable, Dict, IO, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.async_paging import AsyncItemPaged, AsyncList -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import AsyncHttpResponse, HttpRequest -from azure.core.tracing.decorator import distributed_trace -from azure.core.tracing.decorator_async import distributed_trace_async -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from ... import models as _models -from ...operations._topics_operations import ( - build_create_or_update_authorization_rule_request, - build_create_or_update_request, - build_delete_authorization_rule_request, - build_delete_request, - build_get_authorization_rule_request, - build_get_request, - build_list_authorization_rules_request, - build_list_by_namespace_request, - build_list_keys_request, - build_regenerate_keys_request, -) - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.aio.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> AsyncIterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> AsyncIterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - async def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, AsyncList(list_of_elem) - - async def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return AsyncItemPaged(get_next, extract_data) - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace_async - async def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace_async - async def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/__init__.py deleted file mode 100644 index 7493507b42fe..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/__init__.py +++ /dev/null @@ -1,167 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._models_py3 import AccessKeys -from ._models_py3 import Action -from ._models_py3 import ArmDisasterRecovery -from ._models_py3 import ArmDisasterRecoveryListResult -from ._models_py3 import CheckNameAvailability -from ._models_py3 import CheckNameAvailabilityResult -from ._models_py3 import ConnectionState -from ._models_py3 import CorrelationFilter -from ._models_py3 import Encryption -from ._models_py3 import ErrorAdditionalInfo -from ._models_py3 import ErrorResponse -from ._models_py3 import ErrorResponseError -from ._models_py3 import FailoverProperties -from ._models_py3 import Identity -from ._models_py3 import KeyVaultProperties -from ._models_py3 import MessageCountDetails -from ._models_py3 import MigrationConfigListResult -from ._models_py3 import MigrationConfigProperties -from ._models_py3 import NWRuleSetIpRules -from ._models_py3 import NWRuleSetVirtualNetworkRules -from ._models_py3 import NetworkRuleSet -from ._models_py3 import NetworkRuleSetListResult -from ._models_py3 import Operation -from ._models_py3 import OperationDisplay -from ._models_py3 import OperationListResult -from ._models_py3 import PrivateEndpoint -from ._models_py3 import PrivateEndpointConnection -from ._models_py3 import PrivateEndpointConnectionListResult -from ._models_py3 import PrivateLinkResource -from ._models_py3 import PrivateLinkResourcesListResult -from ._models_py3 import ProxyResource -from ._models_py3 import RegenerateAccessKeyParameters -from ._models_py3 import Resource -from ._models_py3 import ResourceNamespacePatch -from ._models_py3 import Rule -from ._models_py3 import RuleListResult -from ._models_py3 import SBAuthorizationRule -from ._models_py3 import SBAuthorizationRuleListResult -from ._models_py3 import SBClientAffineProperties -from ._models_py3 import SBNamespace -from ._models_py3 import SBNamespaceListResult -from ._models_py3 import SBNamespaceUpdateParameters -from ._models_py3 import SBQueue -from ._models_py3 import SBQueueListResult -from ._models_py3 import SBSku -from ._models_py3 import SBSubscription -from ._models_py3 import SBSubscriptionListResult -from ._models_py3 import SBTopic -from ._models_py3 import SBTopicListResult -from ._models_py3 import SqlFilter -from ._models_py3 import SqlRuleAction -from ._models_py3 import Subnet -from ._models_py3 import SystemData -from ._models_py3 import TrackedResource -from ._models_py3 import UserAssignedIdentity -from ._models_py3 import UserAssignedIdentityProperties - -from ._service_bus_management_client_enums import AccessRights -from ._service_bus_management_client_enums import CreatedByType -from ._service_bus_management_client_enums import DefaultAction -from ._service_bus_management_client_enums import EndPointProvisioningState -from ._service_bus_management_client_enums import EntityStatus -from ._service_bus_management_client_enums import FilterType -from ._service_bus_management_client_enums import KeyType -from ._service_bus_management_client_enums import ManagedServiceIdentityType -from ._service_bus_management_client_enums import MigrationConfigurationName -from ._service_bus_management_client_enums import NetworkRuleIPAction -from ._service_bus_management_client_enums import PrivateLinkConnectionStatus -from ._service_bus_management_client_enums import ProvisioningStateDR -from ._service_bus_management_client_enums import PublicNetworkAccess -from ._service_bus_management_client_enums import PublicNetworkAccessFlag -from ._service_bus_management_client_enums import RoleDisasterRecovery -from ._service_bus_management_client_enums import SkuName -from ._service_bus_management_client_enums import SkuTier -from ._service_bus_management_client_enums import TlsVersion -from ._service_bus_management_client_enums import UnavailableReason -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "AccessKeys", - "Action", - "ArmDisasterRecovery", - "ArmDisasterRecoveryListResult", - "CheckNameAvailability", - "CheckNameAvailabilityResult", - "ConnectionState", - "CorrelationFilter", - "Encryption", - "ErrorAdditionalInfo", - "ErrorResponse", - "ErrorResponseError", - "FailoverProperties", - "Identity", - "KeyVaultProperties", - "MessageCountDetails", - "MigrationConfigListResult", - "MigrationConfigProperties", - "NWRuleSetIpRules", - "NWRuleSetVirtualNetworkRules", - "NetworkRuleSet", - "NetworkRuleSetListResult", - "Operation", - "OperationDisplay", - "OperationListResult", - "PrivateEndpoint", - "PrivateEndpointConnection", - "PrivateEndpointConnectionListResult", - "PrivateLinkResource", - "PrivateLinkResourcesListResult", - "ProxyResource", - "RegenerateAccessKeyParameters", - "Resource", - "ResourceNamespacePatch", - "Rule", - "RuleListResult", - "SBAuthorizationRule", - "SBAuthorizationRuleListResult", - "SBClientAffineProperties", - "SBNamespace", - "SBNamespaceListResult", - "SBNamespaceUpdateParameters", - "SBQueue", - "SBQueueListResult", - "SBSku", - "SBSubscription", - "SBSubscriptionListResult", - "SBTopic", - "SBTopicListResult", - "SqlFilter", - "SqlRuleAction", - "Subnet", - "SystemData", - "TrackedResource", - "UserAssignedIdentity", - "UserAssignedIdentityProperties", - "AccessRights", - "CreatedByType", - "DefaultAction", - "EndPointProvisioningState", - "EntityStatus", - "FilterType", - "KeyType", - "ManagedServiceIdentityType", - "MigrationConfigurationName", - "NetworkRuleIPAction", - "PrivateLinkConnectionStatus", - "ProvisioningStateDR", - "PublicNetworkAccess", - "PublicNetworkAccessFlag", - "RoleDisasterRecovery", - "SkuName", - "SkuTier", - "TlsVersion", - "UnavailableReason", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_models_py3.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_models_py3.py deleted file mode 100644 index f1caec0d848b..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_models_py3.py +++ /dev/null @@ -1,3108 +0,0 @@ -# coding=utf-8 -# pylint: disable=too-many-lines -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -import datetime -import sys -from typing import Any, Dict, List, Literal, Optional, TYPE_CHECKING, Union - -from ... import _serialization - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports - -if TYPE_CHECKING: - # pylint: disable=unused-import,ungrouped-imports - from .. import models as _models -JSON = MutableMapping[str, Any] # pylint: disable=unsubscriptable-object - - -class AccessKeys(_serialization.Model): - """Namespace/ServiceBus Connection String. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar primary_connection_string: Primary connection string of the created namespace - authorization rule. - :vartype primary_connection_string: str - :ivar secondary_connection_string: Secondary connection string of the created namespace - authorization rule. - :vartype secondary_connection_string: str - :ivar alias_primary_connection_string: Primary connection string of the alias if GEO DR is - enabled. - :vartype alias_primary_connection_string: str - :ivar alias_secondary_connection_string: Secondary connection string of the alias if GEO DR is - enabled. - :vartype alias_secondary_connection_string: str - :ivar primary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype primary_key: str - :ivar secondary_key: A base64-encoded 256-bit primary key for signing and validating the SAS - token. - :vartype secondary_key: str - :ivar key_name: A string that describes the authorization rule. - :vartype key_name: str - """ - - _validation = { - "primary_connection_string": {"readonly": True}, - "secondary_connection_string": {"readonly": True}, - "alias_primary_connection_string": {"readonly": True}, - "alias_secondary_connection_string": {"readonly": True}, - "primary_key": {"readonly": True}, - "secondary_key": {"readonly": True}, - "key_name": {"readonly": True}, - } - - _attribute_map = { - "primary_connection_string": {"key": "primaryConnectionString", "type": "str"}, - "secondary_connection_string": {"key": "secondaryConnectionString", "type": "str"}, - "alias_primary_connection_string": {"key": "aliasPrimaryConnectionString", "type": "str"}, - "alias_secondary_connection_string": {"key": "aliasSecondaryConnectionString", "type": "str"}, - "primary_key": {"key": "primaryKey", "type": "str"}, - "secondary_key": {"key": "secondaryKey", "type": "str"}, - "key_name": {"key": "keyName", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.primary_connection_string = None - self.secondary_connection_string = None - self.alias_primary_connection_string = None - self.alias_secondary_connection_string = None - self.primary_key = None - self.secondary_key = None - self.key_name = None - - -class Action(_serialization.Model): - """Represents the filter actions which are allowed for the transformation of a message that have - been matched by a filter expression. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: Optional[int] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class ProxyResource(_serialization.Model): - """Common fields that are returned in the response for all Azure Resource Manager resources. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id = None - self.name = None - self.type = None - self.location = None - - -class ArmDisasterRecovery(ProxyResource): - """Single item in List or Get Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SystemData - :ivar provisioning_state: Provisioning state of the Alias(Disaster Recovery configuration) - - possible values 'Accepted' or 'Succeeded' or 'Failed'. Known values are: "Accepted", - "Succeeded", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.ProvisioningStateDR - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is part - of GEO DR pairing. - :vartype partner_namespace: str - :ivar alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :vartype alternate_name: str - :ivar role: role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' - or 'Secondary'. Known values are: "Primary", "PrimaryNotReplicating", and "Secondary". - :vartype role: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.RoleDisasterRecovery - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "role": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "partner_namespace": {"key": "properties.partnerNamespace", "type": "str"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - "role": {"key": "properties.role", "type": "str"}, - } - - def __init__( - self, *, partner_namespace: Optional[str] = None, alternate_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword partner_namespace: ARM Id of the Primary/Secondary eventhub namespace name, which is - part of GEO DR pairing. - :paramtype partner_namespace: str - :keyword alternate_name: Primary/Secondary eventhub namespace name, which is part of GEO DR - pairing. - :paramtype alternate_name: str - """ - super().__init__(**kwargs) - self.system_data = None - self.provisioning_state = None - self.pending_replication_operations_count = None - self.partner_namespace = partner_namespace - self.alternate_name = alternate_name - self.role = None - - -class ArmDisasterRecoveryListResult(_serialization.Model): - """The result of the List Alias(Disaster Recovery configuration) operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Alias(Disaster Recovery configurations). - :vartype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Alias(Disaster Recovery configuration). - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[ArmDisasterRecovery]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.ArmDisasterRecovery"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Alias(Disaster Recovery configurations). - :paramtype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class CheckNameAvailability(_serialization.Model): - """Description of a Check Name availability request properties. - - All required parameters must be populated in order to send to server. - - :ivar name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :vartype name: str - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - } - - def __init__(self, *, name: str, **kwargs: Any) -> None: - """ - :keyword name: The Name to check the namespace name availability and The namespace name can - contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must - end with a letter or number. Required. - :paramtype name: str - """ - super().__init__(**kwargs) - self.name = name - - -class CheckNameAvailabilityResult(_serialization.Model): - """Description of a Check Name availability request properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar message: The detailed info regarding the reason associated with the namespace. - :vartype message: str - :ivar name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :vartype name_available: bool - :ivar reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :vartype reason: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.UnavailableReason - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "message": {"key": "message", "type": "str"}, - "name_available": {"key": "nameAvailable", "type": "bool"}, - "reason": {"key": "reason", "type": "str"}, - } - - def __init__( - self, - *, - name_available: Optional[bool] = None, - reason: Optional[Union[str, "_models.UnavailableReason"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword name_available: Value indicating namespace is availability, true if the namespace is - available; otherwise, false. - :paramtype name_available: bool - :keyword reason: The reason for unavailability of a namespace. Known values are: "None", - "InvalidName", "SubscriptionIsDisabled", "NameInUse", "NameInLockdown", and - "TooManyNamespaceInCurrentSubscription". - :paramtype reason: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.UnavailableReason - """ - super().__init__(**kwargs) - self.message = None - self.name_available = name_available - self.reason = reason - - -class ConnectionState(_serialization.Model): - """ConnectionState information. - - :ivar status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :vartype status: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateLinkConnectionStatus - :ivar description: Description of the connection state. - :vartype description: str - """ - - _attribute_map = { - "status": {"key": "status", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__( - self, - *, - status: Optional[Union[str, "_models.PrivateLinkConnectionStatus"]] = None, - description: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword status: Status of the connection. Known values are: "Pending", "Approved", "Rejected", - and "Disconnected". - :paramtype status: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateLinkConnectionStatus - :keyword description: Description of the connection state. - :paramtype description: str - """ - super().__init__(**kwargs) - self.status = status - self.description = description - - -class CorrelationFilter(_serialization.Model): - """Represents the correlation filter expression. - - :ivar properties: dictionary object for custom filters. - :vartype properties: dict[str, str] - :ivar correlation_id: Identifier of the correlation. - :vartype correlation_id: str - :ivar message_id: Identifier of the message. - :vartype message_id: str - :ivar to: Address to send to. - :vartype to: str - :ivar reply_to: Address of the queue to reply to. - :vartype reply_to: str - :ivar label: Application specific label. - :vartype label: str - :ivar session_id: Session identifier. - :vartype session_id: str - :ivar reply_to_session_id: Session identifier to reply to. - :vartype reply_to_session_id: str - :ivar content_type: Content type of the message. - :vartype content_type: str - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "properties": {"key": "properties", "type": "{str}"}, - "correlation_id": {"key": "correlationId", "type": "str"}, - "message_id": {"key": "messageId", "type": "str"}, - "to": {"key": "to", "type": "str"}, - "reply_to": {"key": "replyTo", "type": "str"}, - "label": {"key": "label", "type": "str"}, - "session_id": {"key": "sessionId", "type": "str"}, - "reply_to_session_id": {"key": "replyToSessionId", "type": "str"}, - "content_type": {"key": "contentType", "type": "str"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - properties: Optional[Dict[str, str]] = None, - correlation_id: Optional[str] = None, - message_id: Optional[str] = None, - to: Optional[str] = None, - reply_to: Optional[str] = None, - label: Optional[str] = None, - session_id: Optional[str] = None, - reply_to_session_id: Optional[str] = None, - content_type: Optional[str] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword properties: dictionary object for custom filters. - :paramtype properties: dict[str, str] - :keyword correlation_id: Identifier of the correlation. - :paramtype correlation_id: str - :keyword message_id: Identifier of the message. - :paramtype message_id: str - :keyword to: Address to send to. - :paramtype to: str - :keyword reply_to: Address of the queue to reply to. - :paramtype reply_to: str - :keyword label: Application specific label. - :paramtype label: str - :keyword session_id: Session identifier. - :paramtype session_id: str - :keyword reply_to_session_id: Session identifier to reply to. - :paramtype reply_to_session_id: str - :keyword content_type: Content type of the message. - :paramtype content_type: str - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.properties = properties - self.correlation_id = correlation_id - self.message_id = message_id - self.to = to - self.reply_to = reply_to - self.label = label - self.session_id = session_id - self.reply_to_session_id = reply_to_session_id - self.content_type = content_type - self.requires_preprocessing = requires_preprocessing - - -class Encryption(_serialization.Model): - """Properties to configure Encryption. - - :ivar key_vault_properties: Properties of KeyVault. - :vartype key_vault_properties: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.KeyVaultProperties] - :ivar key_source: Enumerates the possible value of keySource for Encryption. Default value is - "Microsoft.KeyVault". - :vartype key_source: str - :ivar require_infrastructure_encryption: Enable Infrastructure Encryption (Double Encryption). - :vartype require_infrastructure_encryption: bool - """ - - _attribute_map = { - "key_vault_properties": {"key": "keyVaultProperties", "type": "[KeyVaultProperties]"}, - "key_source": {"key": "keySource", "type": "str"}, - "require_infrastructure_encryption": {"key": "requireInfrastructureEncryption", "type": "bool"}, - } - - def __init__( - self, - *, - key_vault_properties: Optional[List["_models.KeyVaultProperties"]] = None, - key_source: Literal["Microsoft.KeyVault"] = "Microsoft.KeyVault", - require_infrastructure_encryption: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword key_vault_properties: Properties of KeyVault. - :paramtype key_vault_properties: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.KeyVaultProperties] - :keyword key_source: Enumerates the possible value of keySource for Encryption. Default value - is "Microsoft.KeyVault". - :paramtype key_source: str - :keyword require_infrastructure_encryption: Enable Infrastructure Encryption (Double - Encryption). - :paramtype require_infrastructure_encryption: bool - """ - super().__init__(**kwargs) - self.key_vault_properties = key_vault_properties - self.key_source = key_source - self.require_infrastructure_encryption = require_infrastructure_encryption - - -class ErrorAdditionalInfo(_serialization.Model): - """The resource management error additional info. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar type: The additional info type. - :vartype type: str - :ivar info: The additional info. - :vartype info: JSON - """ - - _validation = { - "type": {"readonly": True}, - "info": {"readonly": True}, - } - - _attribute_map = { - "type": {"key": "type", "type": "str"}, - "info": {"key": "info", "type": "object"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.type = None - self.info = None - - -class ErrorResponse(_serialization.Model): - """The resource management error response. - - :ivar error: The error object. - :vartype error: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ErrorResponseError - """ - - _attribute_map = { - "error": {"key": "error", "type": "ErrorResponseError"}, - } - - def __init__(self, *, error: Optional["_models.ErrorResponseError"] = None, **kwargs: Any) -> None: - """ - :keyword error: The error object. - :paramtype error: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ErrorResponseError - """ - super().__init__(**kwargs) - self.error = error - - -class ErrorResponseError(_serialization.Model): - """The error object. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar code: The error code. - :vartype code: str - :ivar message: The error message. - :vartype message: str - :ivar target: The error target. - :vartype target: str - :ivar details: The error details. - :vartype details: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.ErrorResponse] - :ivar additional_info: The error additional info. - :vartype additional_info: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.ErrorAdditionalInfo] - """ - - _validation = { - "code": {"readonly": True}, - "message": {"readonly": True}, - "target": {"readonly": True}, - "details": {"readonly": True}, - "additional_info": {"readonly": True}, - } - - _attribute_map = { - "code": {"key": "code", "type": "str"}, - "message": {"key": "message", "type": "str"}, - "target": {"key": "target", "type": "str"}, - "details": {"key": "details", "type": "[ErrorResponse]"}, - "additional_info": {"key": "additionalInfo", "type": "[ErrorAdditionalInfo]"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.code = None - self.message = None - self.target = None - self.details = None - self.additional_info = None - - -class FailoverProperties(_serialization.Model): - """Safe failover is to indicate the service should wait for pending replication to finish before - switching to the secondary. - - :ivar is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :vartype is_safe_failover: bool - """ - - _attribute_map = { - "is_safe_failover": {"key": "properties.IsSafeFailover", "type": "bool"}, - } - - def __init__(self, *, is_safe_failover: Optional[bool] = None, **kwargs: Any) -> None: - """ - :keyword is_safe_failover: Safe failover is to indicate the service should wait for pending - replication to finish before switching to the secondary. - :paramtype is_safe_failover: bool - """ - super().__init__(**kwargs) - self.is_safe_failover = is_safe_failover - - -class Identity(_serialization.Model): - """Properties to configure User Assigned Identities for Bring your Own Keys. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar principal_id: ObjectId from the KeyVault. - :vartype principal_id: str - :ivar tenant_id: TenantId from the KeyVault. - :vartype tenant_id: str - :ivar type: Type of managed service identity. Known values are: "SystemAssigned", - "UserAssigned", "SystemAssigned, UserAssigned", and "None". - :vartype type: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.ManagedServiceIdentityType - :ivar user_assigned_identities: Properties for User Assigned Identities. - :vartype user_assigned_identities: dict[str, - ~azure.mgmt.servicebus.v2022_10_01_preview.models.UserAssignedIdentity] - """ - - _validation = { - "principal_id": {"readonly": True}, - "tenant_id": {"readonly": True}, - } - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "tenant_id": {"key": "tenantId", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "user_assigned_identities": {"key": "userAssignedIdentities", "type": "{UserAssignedIdentity}"}, - } - - def __init__( - self, - *, - type: Optional[Union[str, "_models.ManagedServiceIdentityType"]] = None, - user_assigned_identities: Optional[Dict[str, "_models.UserAssignedIdentity"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword type: Type of managed service identity. Known values are: "SystemAssigned", - "UserAssigned", "SystemAssigned, UserAssigned", and "None". - :paramtype type: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.ManagedServiceIdentityType - :keyword user_assigned_identities: Properties for User Assigned Identities. - :paramtype user_assigned_identities: dict[str, - ~azure.mgmt.servicebus.v2022_10_01_preview.models.UserAssignedIdentity] - """ - super().__init__(**kwargs) - self.principal_id = None - self.tenant_id = None - self.type = type - self.user_assigned_identities = user_assigned_identities - - -class KeyVaultProperties(_serialization.Model): - """Properties to configure keyVault Properties. - - :ivar key_name: Name of the Key from KeyVault. - :vartype key_name: str - :ivar key_vault_uri: Uri of KeyVault. - :vartype key_vault_uri: str - :ivar key_version: Version of KeyVault. - :vartype key_version: str - :ivar identity: - :vartype identity: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.UserAssignedIdentityProperties - """ - - _attribute_map = { - "key_name": {"key": "keyName", "type": "str"}, - "key_vault_uri": {"key": "keyVaultUri", "type": "str"}, - "key_version": {"key": "keyVersion", "type": "str"}, - "identity": {"key": "identity", "type": "UserAssignedIdentityProperties"}, - } - - def __init__( - self, - *, - key_name: Optional[str] = None, - key_vault_uri: Optional[str] = None, - key_version: Optional[str] = None, - identity: Optional["_models.UserAssignedIdentityProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword key_name: Name of the Key from KeyVault. - :paramtype key_name: str - :keyword key_vault_uri: Uri of KeyVault. - :paramtype key_vault_uri: str - :keyword key_version: Version of KeyVault. - :paramtype key_version: str - :keyword identity: - :paramtype identity: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.UserAssignedIdentityProperties - """ - super().__init__(**kwargs) - self.key_name = key_name - self.key_vault_uri = key_vault_uri - self.key_version = key_version - self.identity = identity - - -class MessageCountDetails(_serialization.Model): - """Message Count Details. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar active_message_count: Number of active messages in the queue, topic, or subscription. - :vartype active_message_count: int - :ivar dead_letter_message_count: Number of messages that are dead lettered. - :vartype dead_letter_message_count: int - :ivar scheduled_message_count: Number of scheduled messages. - :vartype scheduled_message_count: int - :ivar transfer_message_count: Number of messages transferred to another queue, topic, or - subscription. - :vartype transfer_message_count: int - :ivar transfer_dead_letter_message_count: Number of messages transferred into dead letters. - :vartype transfer_dead_letter_message_count: int - """ - - _validation = { - "active_message_count": {"readonly": True}, - "dead_letter_message_count": {"readonly": True}, - "scheduled_message_count": {"readonly": True}, - "transfer_message_count": {"readonly": True}, - "transfer_dead_letter_message_count": {"readonly": True}, - } - - _attribute_map = { - "active_message_count": {"key": "activeMessageCount", "type": "int"}, - "dead_letter_message_count": {"key": "deadLetterMessageCount", "type": "int"}, - "scheduled_message_count": {"key": "scheduledMessageCount", "type": "int"}, - "transfer_message_count": {"key": "transferMessageCount", "type": "int"}, - "transfer_dead_letter_message_count": {"key": "transferDeadLetterMessageCount", "type": "int"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.active_message_count = None - self.dead_letter_message_count = None - self.scheduled_message_count = None - self.transfer_message_count = None - self.transfer_dead_letter_message_count = None - - -class MigrationConfigListResult(_serialization.Model): - """The result of the List migrationConfigurations operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of Migration Configs. - :vartype value: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of migrationConfigurations. - :vartype next_link: str - """ - - _validation = { - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[MigrationConfigProperties]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, *, value: Optional[List["_models.MigrationConfigProperties"]] = None, **kwargs: Any) -> None: - """ - :keyword value: List of Migration Configs. - :paramtype value: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties] - """ - super().__init__(**kwargs) - self.value = value - self.next_link = None - - -class MigrationConfigProperties(ProxyResource): - """Single item in List or Get Migration Config operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SystemData - :ivar provisioning_state: Provisioning state of Migration Configuration. - :vartype provisioning_state: str - :ivar pending_replication_operations_count: Number of entities pending to be replicated. - :vartype pending_replication_operations_count: int - :ivar target_namespace: Existing premium Namespace ARM Id name which has no entities, will be - used for migration. - :vartype target_namespace: str - :ivar post_migration_name: Name to access Standard Namespace after migration. - :vartype post_migration_name: str - :ivar migration_state: State in which Standard to Premium Migration is, possible values : - Unknown, Reverting, Completing, Initiating, Syncing, Active. - :vartype migration_state: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "pending_replication_operations_count": {"readonly": True}, - "migration_state": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "pending_replication_operations_count": {"key": "properties.pendingReplicationOperationsCount", "type": "int"}, - "target_namespace": {"key": "properties.targetNamespace", "type": "str"}, - "post_migration_name": {"key": "properties.postMigrationName", "type": "str"}, - "migration_state": {"key": "properties.migrationState", "type": "str"}, - } - - def __init__( - self, *, target_namespace: Optional[str] = None, post_migration_name: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword target_namespace: Existing premium Namespace ARM Id name which has no entities, will - be used for migration. - :paramtype target_namespace: str - :keyword post_migration_name: Name to access Standard Namespace after migration. - :paramtype post_migration_name: str - """ - super().__init__(**kwargs) - self.system_data = None - self.provisioning_state = None - self.pending_replication_operations_count = None - self.target_namespace = target_namespace - self.post_migration_name = post_migration_name - self.migration_state = None - - -class NetworkRuleSet(ProxyResource): - """Description of NetworkRuleSet resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SystemData - :ivar trusted_service_access_enabled: Value that indicates whether Trusted Service Access is - Enabled or not. - :vartype trusted_service_access_enabled: bool - :ivar default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :vartype default_action: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.DefaultAction - :ivar virtual_network_rules: List VirtualNetwork Rules. - :vartype virtual_network_rules: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.NWRuleSetVirtualNetworkRules] - :ivar ip_rules: List of IpRules. - :vartype ip_rules: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.NWRuleSetIpRules] - :ivar public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled" and "Disabled". - :vartype public_network_access: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.PublicNetworkAccessFlag - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "trusted_service_access_enabled": {"key": "properties.trustedServiceAccessEnabled", "type": "bool"}, - "default_action": {"key": "properties.defaultAction", "type": "str"}, - "virtual_network_rules": {"key": "properties.virtualNetworkRules", "type": "[NWRuleSetVirtualNetworkRules]"}, - "ip_rules": {"key": "properties.ipRules", "type": "[NWRuleSetIpRules]"}, - "public_network_access": {"key": "properties.publicNetworkAccess", "type": "str"}, - } - - def __init__( - self, - *, - trusted_service_access_enabled: Optional[bool] = None, - default_action: Optional[Union[str, "_models.DefaultAction"]] = None, - virtual_network_rules: Optional[List["_models.NWRuleSetVirtualNetworkRules"]] = None, - ip_rules: Optional[List["_models.NWRuleSetIpRules"]] = None, - public_network_access: Union[str, "_models.PublicNetworkAccessFlag"] = "Enabled", - **kwargs: Any - ) -> None: - """ - :keyword trusted_service_access_enabled: Value that indicates whether Trusted Service Access is - Enabled or not. - :paramtype trusted_service_access_enabled: bool - :keyword default_action: Default Action for Network Rule Set. Known values are: "Allow" and - "Deny". - :paramtype default_action: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.DefaultAction - :keyword virtual_network_rules: List VirtualNetwork Rules. - :paramtype virtual_network_rules: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.NWRuleSetVirtualNetworkRules] - :keyword ip_rules: List of IpRules. - :paramtype ip_rules: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.NWRuleSetIpRules] - :keyword public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled" and "Disabled". - :paramtype public_network_access: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.PublicNetworkAccessFlag - """ - super().__init__(**kwargs) - self.system_data = None - self.trusted_service_access_enabled = trusted_service_access_enabled - self.default_action = default_action - self.virtual_network_rules = virtual_network_rules - self.ip_rules = ip_rules - self.public_network_access = public_network_access - - -class NetworkRuleSetListResult(_serialization.Model): - """The response of the List NetworkRuleSet operation. - - :ivar value: Result of the List NetworkRuleSet operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of NetworkRuleSet. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[NetworkRuleSet]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.NetworkRuleSet"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List NetworkRuleSet operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of NetworkRuleSet. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class NWRuleSetIpRules(_serialization.Model): - """Description of NetWorkRuleSet - IpRules resource. - - :ivar ip_mask: IP Mask. - :vartype ip_mask: str - :ivar action: The IP Filter Action. "Allow" - :vartype action: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleIPAction - """ - - _attribute_map = { - "ip_mask": {"key": "ipMask", "type": "str"}, - "action": {"key": "action", "type": "str"}, - } - - def __init__( - self, - *, - ip_mask: Optional[str] = None, - action: Union[str, "_models.NetworkRuleIPAction"] = "Allow", - **kwargs: Any - ) -> None: - """ - :keyword ip_mask: IP Mask. - :paramtype ip_mask: str - :keyword action: The IP Filter Action. "Allow" - :paramtype action: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleIPAction - """ - super().__init__(**kwargs) - self.ip_mask = ip_mask - self.action = action - - -class NWRuleSetVirtualNetworkRules(_serialization.Model): - """Description of VirtualNetworkRules - NetworkRules resource. - - :ivar subnet: Subnet properties. - :vartype subnet: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Subnet - :ivar ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing VNet - Service Endpoint. - :vartype ignore_missing_vnet_service_endpoint: bool - """ - - _attribute_map = { - "subnet": {"key": "subnet", "type": "Subnet"}, - "ignore_missing_vnet_service_endpoint": {"key": "ignoreMissingVnetServiceEndpoint", "type": "bool"}, - } - - def __init__( - self, - *, - subnet: Optional["_models.Subnet"] = None, - ignore_missing_vnet_service_endpoint: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword subnet: Subnet properties. - :paramtype subnet: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Subnet - :keyword ignore_missing_vnet_service_endpoint: Value that indicates whether to ignore missing - VNet Service Endpoint. - :paramtype ignore_missing_vnet_service_endpoint: bool - """ - super().__init__(**kwargs) - self.subnet = subnet - self.ignore_missing_vnet_service_endpoint = ignore_missing_vnet_service_endpoint - - -class Operation(_serialization.Model): - """A Service Bus REST API operation. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar name: Operation name: {provider}/{resource}/{operation}. - :vartype name: str - :ivar is_data_action: Indicates whether the operation is a data action. - :vartype is_data_action: bool - :ivar display: Display of the operation. - :vartype display: ~azure.mgmt.servicebus.v2022_10_01_preview.models.OperationDisplay - :ivar origin: Origin of the operation. - :vartype origin: str - :ivar properties: Properties of the operation. - :vartype properties: JSON - """ - - _validation = { - "name": {"readonly": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "is_data_action": {"key": "isDataAction", "type": "bool"}, - "display": {"key": "display", "type": "OperationDisplay"}, - "origin": {"key": "origin", "type": "str"}, - "properties": {"key": "properties", "type": "object"}, - } - - def __init__( - self, - *, - is_data_action: Optional[bool] = None, - display: Optional["_models.OperationDisplay"] = None, - origin: Optional[str] = None, - properties: Optional[JSON] = None, - **kwargs: Any - ) -> None: - """ - :keyword is_data_action: Indicates whether the operation is a data action. - :paramtype is_data_action: bool - :keyword display: Display of the operation. - :paramtype display: ~azure.mgmt.servicebus.v2022_10_01_preview.models.OperationDisplay - :keyword origin: Origin of the operation. - :paramtype origin: str - :keyword properties: Properties of the operation. - :paramtype properties: JSON - """ - super().__init__(**kwargs) - self.name = None - self.is_data_action = is_data_action - self.display = display - self.origin = origin - self.properties = properties - - -class OperationDisplay(_serialization.Model): - """Operation display payload. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar provider: Resource provider of the operation. - :vartype provider: str - :ivar resource: Resource of the operation. - :vartype resource: str - :ivar operation: Localized friendly name for the operation. - :vartype operation: str - :ivar description: Localized friendly description for the operation. - :vartype description: str - """ - - _validation = { - "provider": {"readonly": True}, - "resource": {"readonly": True}, - "operation": {"readonly": True}, - "description": {"readonly": True}, - } - - _attribute_map = { - "provider": {"key": "provider", "type": "str"}, - "resource": {"key": "resource", "type": "str"}, - "operation": {"key": "operation", "type": "str"}, - "description": {"key": "description", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.provider = None - self.resource = None - self.operation = None - self.description = None - - -class OperationListResult(_serialization.Model): - """Result of the request to list ServiceBus operations. It contains a list of operations and a URL - link to get the next set of results. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar value: List of ServiceBus operations supported by the Microsoft.ServiceBus resource - provider. - :vartype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.Operation] - :ivar next_link: URL to get the next set of operation list results if there are any. - :vartype next_link: str - """ - - _validation = { - "value": {"readonly": True}, - "next_link": {"readonly": True}, - } - - _attribute_map = { - "value": {"key": "value", "type": "[Operation]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.value = None - self.next_link = None - - -class PrivateEndpoint(_serialization.Model): - """PrivateEndpoint information. - - :ivar id: The ARM identifier for Private Endpoint. - :vartype id: str - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: Optional[str] = None, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: The ARM identifier for Private Endpoint. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class PrivateEndpointConnection(ProxyResource): - """Properties of the PrivateEndpointConnection. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SystemData - :ivar private_endpoint: The Private Endpoint resource for this Connection. - :vartype private_endpoint: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpoint - :ivar private_link_service_connection_state: Details about the state of the connection. - :vartype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.ConnectionState - :ivar provisioning_state: Provisioning state of the Private Endpoint Connection. Known values - are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :vartype provisioning_state: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.EndPointProvisioningState - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "private_endpoint": {"key": "properties.privateEndpoint", "type": "PrivateEndpoint"}, - "private_link_service_connection_state": { - "key": "properties.privateLinkServiceConnectionState", - "type": "ConnectionState", - }, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - } - - def __init__( - self, - *, - private_endpoint: Optional["_models.PrivateEndpoint"] = None, - private_link_service_connection_state: Optional["_models.ConnectionState"] = None, - provisioning_state: Optional[Union[str, "_models.EndPointProvisioningState"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword private_endpoint: The Private Endpoint resource for this Connection. - :paramtype private_endpoint: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpoint - :keyword private_link_service_connection_state: Details about the state of the connection. - :paramtype private_link_service_connection_state: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.ConnectionState - :keyword provisioning_state: Provisioning state of the Private Endpoint Connection. Known - values are: "Creating", "Updating", "Deleting", "Succeeded", "Canceled", and "Failed". - :paramtype provisioning_state: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.EndPointProvisioningState - """ - super().__init__(**kwargs) - self.system_data = None - self.private_endpoint = private_endpoint - self.private_link_service_connection_state = private_link_service_connection_state - self.provisioning_state = provisioning_state - - -class PrivateEndpointConnectionListResult(_serialization.Model): - """Result of the list of all private endpoint connections operation. - - :ivar value: A collection of private endpoint connection resources. - :vartype value: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection] - :ivar next_link: A link for the next page of private endpoint connection resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateEndpointConnection]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateEndpointConnection"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private endpoint connection resources. - :paramtype value: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection] - :keyword next_link: A link for the next page of private endpoint connection resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class PrivateLinkResource(_serialization.Model): - """Information of the private link resource. - - :ivar id: Fully qualified identifier of the resource. - :vartype id: str - :ivar name: Name of the resource. - :vartype name: str - :ivar type: Type of the resource. - :vartype type: str - :ivar group_id: - :vartype group_id: str - :ivar required_members: Required Members. - :vartype required_members: list[str] - :ivar required_zone_names: Required Zone Names. - :vartype required_zone_names: list[str] - """ - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "group_id": {"key": "properties.groupId", "type": "str"}, - "required_members": {"key": "properties.requiredMembers", "type": "[str]"}, - "required_zone_names": {"key": "properties.requiredZoneNames", "type": "[str]"}, - } - - def __init__( - self, - *, - id: Optional[str] = None, # pylint: disable=redefined-builtin - name: Optional[str] = None, - type: Optional[str] = None, - group_id: Optional[str] = None, - required_members: Optional[List[str]] = None, - required_zone_names: Optional[List[str]] = None, - **kwargs: Any - ) -> None: - """ - :keyword id: Fully qualified identifier of the resource. - :paramtype id: str - :keyword name: Name of the resource. - :paramtype name: str - :keyword type: Type of the resource. - :paramtype type: str - :keyword group_id: - :paramtype group_id: str - :keyword required_members: Required Members. - :paramtype required_members: list[str] - :keyword required_zone_names: Required Zone Names. - :paramtype required_zone_names: list[str] - """ - super().__init__(**kwargs) - self.id = id - self.name = name - self.type = type - self.group_id = group_id - self.required_members = required_members - self.required_zone_names = required_zone_names - - -class PrivateLinkResourcesListResult(_serialization.Model): - """Result of the List private link resources operation. - - :ivar value: A collection of private link resources. - :vartype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateLinkResource] - :ivar next_link: A link for the next page of private link resources. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[PrivateLinkResource]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.PrivateLinkResource"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: A collection of private link resources. - :paramtype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateLinkResource] - :keyword next_link: A link for the next page of private link resources. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class RegenerateAccessKeyParameters(_serialization.Model): - """Parameters supplied to the Regenerate Authorization Rule operation, specifies which key needs - to be reset. - - All required parameters must be populated in order to send to server. - - :ivar key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :vartype key_type: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.KeyType - :ivar key: Optional, if the key value provided, is reset for KeyType value or autogenerate Key - value set for keyType. - :vartype key: str - """ - - _validation = { - "key_type": {"required": True}, - } - - _attribute_map = { - "key_type": {"key": "keyType", "type": "str"}, - "key": {"key": "key", "type": "str"}, - } - - def __init__(self, *, key_type: Union[str, "_models.KeyType"], key: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword key_type: The access key to regenerate. Required. Known values are: "PrimaryKey" and - "SecondaryKey". - :paramtype key_type: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.KeyType - :keyword key: Optional, if the key value provided, is reset for KeyType value or autogenerate - Key value set for keyType. - :paramtype key: str - """ - super().__init__(**kwargs) - self.key_type = key_type - self.key = key - - -class Resource(_serialization.Model): - """The Resource definition for other than namespace. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.id = None - self.name = None - self.type = None - - -class ResourceNamespacePatch(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: Optional[str] = None, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class Rule(ProxyResource): - """Description of Rule Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SystemData - :ivar action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :vartype action: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Action - :ivar filter_type: Filter type that is evaluated against a BrokeredMessage. Known values are: - "SqlFilter" and "CorrelationFilter". - :vartype filter_type: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.FilterType - :ivar sql_filter: Properties of sqlFilter. - :vartype sql_filter: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SqlFilter - :ivar correlation_filter: Properties of correlationFilter. - :vartype correlation_filter: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.CorrelationFilter - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "action": {"key": "properties.action", "type": "Action"}, - "filter_type": {"key": "properties.filterType", "type": "str"}, - "sql_filter": {"key": "properties.sqlFilter", "type": "SqlFilter"}, - "correlation_filter": {"key": "properties.correlationFilter", "type": "CorrelationFilter"}, - } - - def __init__( - self, - *, - action: Optional["_models.Action"] = None, - filter_type: Optional[Union[str, "_models.FilterType"]] = None, - sql_filter: Optional["_models.SqlFilter"] = None, - correlation_filter: Optional["_models.CorrelationFilter"] = None, - **kwargs: Any - ) -> None: - """ - :keyword action: Represents the filter actions which are allowed for the transformation of a - message that have been matched by a filter expression. - :paramtype action: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Action - :keyword filter_type: Filter type that is evaluated against a BrokeredMessage. Known values - are: "SqlFilter" and "CorrelationFilter". - :paramtype filter_type: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.FilterType - :keyword sql_filter: Properties of sqlFilter. - :paramtype sql_filter: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SqlFilter - :keyword correlation_filter: Properties of correlationFilter. - :paramtype correlation_filter: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.CorrelationFilter - """ - super().__init__(**kwargs) - self.system_data = None - self.action = action - self.filter_type = filter_type - self.sql_filter = sql_filter - self.correlation_filter = correlation_filter - - -class RuleListResult(_serialization.Model): - """The response of the List rule operation. - - :ivar value: Result of the List Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[Rule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.Rule"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBAuthorizationRule(ProxyResource): - """Description of a namespace authorization rule. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SystemData - :ivar rights: The rights associated with the rule. - :vartype rights: list[str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessRights] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "rights": {"key": "properties.rights", "type": "[str]"}, - } - - def __init__(self, *, rights: Optional[List[Union[str, "_models.AccessRights"]]] = None, **kwargs: Any) -> None: - """ - :keyword rights: The rights associated with the rule. - :paramtype rights: list[str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessRights] - """ - super().__init__(**kwargs) - self.system_data = None - self.rights = rights - - -class SBAuthorizationRuleListResult(_serialization.Model): - """The response to the List Namespace operation. - - :ivar value: Result of the List Authorization Rules operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Authorization Rules. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBAuthorizationRule]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, - *, - value: Optional[List["_models.SBAuthorizationRule"]] = None, - next_link: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Authorization Rules operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Authorization Rules. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBClientAffineProperties(_serialization.Model): - """Properties specific to client affine subscriptions. - - :ivar client_id: Indicates the Client ID of the application that created the client-affine - subscription. - :vartype client_id: str - :ivar is_durable: For client-affine subscriptions, this value indicates whether the - subscription is durable or not. - :vartype is_durable: bool - :ivar is_shared: For client-affine subscriptions, this value indicates whether the subscription - is shared or not. - :vartype is_shared: bool - """ - - _attribute_map = { - "client_id": {"key": "clientId", "type": "str"}, - "is_durable": {"key": "isDurable", "type": "bool"}, - "is_shared": {"key": "isShared", "type": "bool"}, - } - - def __init__( - self, - *, - client_id: Optional[str] = None, - is_durable: Optional[bool] = None, - is_shared: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword client_id: Indicates the Client ID of the application that created the client-affine - subscription. - :paramtype client_id: str - :keyword is_durable: For client-affine subscriptions, this value indicates whether the - subscription is durable or not. - :paramtype is_durable: bool - :keyword is_shared: For client-affine subscriptions, this value indicates whether the - subscription is shared or not. - :paramtype is_shared: bool - """ - super().__init__(**kwargs) - self.client_id = client_id - self.is_durable = is_durable - self.is_shared = is_shared - - -class TrackedResource(Resource): - """The Resource definition. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.location = location - self.tags = tags - - -class SBNamespace(TrackedResource): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: The Geo-location where the resource lives. Required. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Identity - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SystemData - :ivar minimum_tls_version: The minimum TLS version for the cluster to support, e.g. '1.2'. - Known values are: "1.0", "1.1", and "1.2". - :vartype minimum_tls_version: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.TlsVersion - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar zone_redundant: Enabling this property creates a Premium Service Bus Namespace in regions - supported availability zones. - :vartype zone_redundant: bool - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Encryption - :ivar private_endpoint_connections: List of private endpoint connections. - :vartype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection] - :ivar disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :vartype disable_local_auth: bool - :ivar alternate_name: Alternate name for namespace. - :vartype alternate_name: str - :ivar public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled", "Disabled", and "SecuredByPerimeter". - :vartype public_network_access: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.PublicNetworkAccess - :ivar premium_messaging_partitions: The number of partitions of a Service Bus namespace. This - property is only applicable to Premium SKU namespaces. The default value is 1 and possible - values are 1, 2 and 4. - :vartype premium_messaging_partitions: int - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"required": True}, - "system_data": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "minimum_tls_version": {"key": "properties.minimumTlsVersion", "type": "str"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "zone_redundant": {"key": "properties.zoneRedundant", "type": "bool"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - "private_endpoint_connections": { - "key": "properties.privateEndpointConnections", - "type": "[PrivateEndpointConnection]", - }, - "disable_local_auth": {"key": "properties.disableLocalAuth", "type": "bool"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - "public_network_access": {"key": "properties.publicNetworkAccess", "type": "str"}, - "premium_messaging_partitions": {"key": "properties.premiumMessagingPartitions", "type": "int"}, - } - - def __init__( - self, - *, - location: str, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - minimum_tls_version: Optional[Union[str, "_models.TlsVersion"]] = None, - zone_redundant: Optional[bool] = None, - encryption: Optional["_models.Encryption"] = None, - private_endpoint_connections: Optional[List["_models.PrivateEndpointConnection"]] = None, - disable_local_auth: Optional[bool] = None, - alternate_name: Optional[str] = None, - public_network_access: Union[str, "_models.PublicNetworkAccess"] = "Enabled", - premium_messaging_partitions: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: The Geo-location where the resource lives. Required. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Identity - :keyword minimum_tls_version: The minimum TLS version for the cluster to support, e.g. '1.2'. - Known values are: "1.0", "1.1", and "1.2". - :paramtype minimum_tls_version: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.TlsVersion - :keyword zone_redundant: Enabling this property creates a Premium Service Bus Namespace in - regions supported availability zones. - :paramtype zone_redundant: bool - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Encryption - :keyword private_endpoint_connections: List of private endpoint connections. - :paramtype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection] - :keyword disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :paramtype disable_local_auth: bool - :keyword alternate_name: Alternate name for namespace. - :paramtype alternate_name: str - :keyword public_network_access: This determines if traffic is allowed over public network. By - default it is enabled. Known values are: "Enabled", "Disabled", and "SecuredByPerimeter". - :paramtype public_network_access: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.PublicNetworkAccess - :keyword premium_messaging_partitions: The number of partitions of a Service Bus namespace. - This property is only applicable to Premium SKU namespaces. The default value is 1 and possible - values are 1, 2 and 4. - :paramtype premium_messaging_partitions: int - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.system_data = None - self.minimum_tls_version = minimum_tls_version - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.zone_redundant = zone_redundant - self.encryption = encryption - self.private_endpoint_connections = private_endpoint_connections - self.disable_local_auth = disable_local_auth - self.alternate_name = alternate_name - self.public_network_access = public_network_access - self.premium_messaging_partitions = premium_messaging_partitions - - -class SBNamespaceListResult(_serialization.Model): - """The response of the List Namespace operation. - - :ivar value: Result of the List Namespace operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of Namespaces. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBNamespace]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBNamespace"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Namespace operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of Namespaces. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBNamespaceUpdateParameters(ResourceNamespacePatch): # pylint: disable=too-many-instance-attributes - """Description of a namespace resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Resource Id. - :vartype id: str - :ivar name: Resource name. - :vartype name: str - :ivar type: Resource type. - :vartype type: str - :ivar location: Resource location. - :vartype location: str - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar sku: Properties of SKU. - :vartype sku: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSku - :ivar identity: Properties of BYOK Identity description. - :vartype identity: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Identity - :ivar provisioning_state: Provisioning state of the namespace. - :vartype provisioning_state: str - :ivar status: Status of the namespace. - :vartype status: str - :ivar created_at: The time the namespace was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The time the namespace was updated. - :vartype updated_at: ~datetime.datetime - :ivar service_bus_endpoint: Endpoint you can use to perform Service Bus operations. - :vartype service_bus_endpoint: str - :ivar metric_id: Identifier for Azure Insights metrics. - :vartype metric_id: str - :ivar encryption: Properties of BYOK Encryption description. - :vartype encryption: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Encryption - :ivar private_endpoint_connections: List of private endpoint connections. - :vartype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection] - :ivar disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :vartype disable_local_auth: bool - :ivar alternate_name: Alternate name for namespace. - :vartype alternate_name: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "provisioning_state": {"readonly": True}, - "status": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "service_bus_endpoint": {"readonly": True}, - "metric_id": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "tags": {"key": "tags", "type": "{str}"}, - "sku": {"key": "sku", "type": "SBSku"}, - "identity": {"key": "identity", "type": "Identity"}, - "provisioning_state": {"key": "properties.provisioningState", "type": "str"}, - "status": {"key": "properties.status", "type": "str"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "service_bus_endpoint": {"key": "properties.serviceBusEndpoint", "type": "str"}, - "metric_id": {"key": "properties.metricId", "type": "str"}, - "encryption": {"key": "properties.encryption", "type": "Encryption"}, - "private_endpoint_connections": { - "key": "properties.privateEndpointConnections", - "type": "[PrivateEndpointConnection]", - }, - "disable_local_auth": {"key": "properties.disableLocalAuth", "type": "bool"}, - "alternate_name": {"key": "properties.alternateName", "type": "str"}, - } - - def __init__( - self, - *, - location: Optional[str] = None, - tags: Optional[Dict[str, str]] = None, - sku: Optional["_models.SBSku"] = None, - identity: Optional["_models.Identity"] = None, - encryption: Optional["_models.Encryption"] = None, - private_endpoint_connections: Optional[List["_models.PrivateEndpointConnection"]] = None, - disable_local_auth: Optional[bool] = None, - alternate_name: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword location: Resource location. - :paramtype location: str - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword sku: Properties of SKU. - :paramtype sku: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSku - :keyword identity: Properties of BYOK Identity description. - :paramtype identity: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Identity - :keyword encryption: Properties of BYOK Encryption description. - :paramtype encryption: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Encryption - :keyword private_endpoint_connections: List of private endpoint connections. - :paramtype private_endpoint_connections: - list[~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection] - :keyword disable_local_auth: This property disables SAS authentication for the Service Bus - namespace. - :paramtype disable_local_auth: bool - :keyword alternate_name: Alternate name for namespace. - :paramtype alternate_name: str - """ - super().__init__(location=location, tags=tags, **kwargs) - self.sku = sku - self.identity = identity - self.provisioning_state = None - self.status = None - self.created_at = None - self.updated_at = None - self.service_bus_endpoint = None - self.metric_id = None - self.encryption = encryption - self.private_endpoint_connections = private_endpoint_connections - self.disable_local_auth = disable_local_auth - self.alternate_name = alternate_name - - -class SBQueue(ProxyResource): # pylint: disable=too-many-instance-attributes - """Description of queue Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SystemData - :ivar count_details: Message Count Details. - :vartype count_details: ~azure.mgmt.servicebus.v2022_10_01_preview.models.MessageCountDetails - :ivar created_at: The exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time a message was sent, or the last time there was a receive request - to this queue. - :vartype accessed_at: ~datetime.datetime - :ivar size_in_bytes: The size of the queue, in bytes. - :vartype size_in_bytes: int - :ivar message_count: The number of messages in the queue. - :vartype message_count: int - :ivar lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size of - memory allocated for the queue. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the queue. This property is only used in Premium today and default is 1024. - :vartype max_message_size_in_kilobytes: int - :ivar requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar requires_session: A value that indicates whether the queue supports the concept of - sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_message_expiration: A value that indicates whether this queue has dead - letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: The maximum delivery count. A message is automatically deadlettered - after this number of deliveries. default value is 10. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: A value that indicates whether the queue is to be partitioned across - multiple message brokers. - :vartype enable_partitioning: bool - :ivar enable_express: A value that indicates whether Express Entities are enabled. An express - queue holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "count_details": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "message_count": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "max_message_size_in_kilobytes": {"key": "properties.maxMessageSizeInKilobytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - max_message_size_in_kilobytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8601 timespan duration of a peek-lock; that is, the amount of time - that the message is locked for other receivers. The maximum value for LockDuration is 5 - minutes; the default value is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword max_size_in_megabytes: The maximum size of the queue in megabytes, which is the size - of memory allocated for the queue. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the queue. This property is only used in Premium today and default is 1024. - :paramtype max_message_size_in_kilobytes: int - :keyword requires_duplicate_detection: A value indicating if this queue requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword requires_session: A value that indicates whether the queue supports the concept of - sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8601 default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_message_expiration: A value that indicates whether this queue has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: The maximum delivery count. A message is automatically - deadlettered after this number of deliveries. default value is 10. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the queue is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: A value that indicates whether the queue is to be partitioned - across multiple message brokers. - :paramtype enable_partitioning: bool - :keyword enable_express: A value that indicates whether Express Entities are enabled. An - express queue holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - """ - super().__init__(**kwargs) - self.system_data = None - self.count_details = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.size_in_bytes = None - self.message_count = None - self.lock_duration = lock_duration - self.max_size_in_megabytes = max_size_in_megabytes - self.max_message_size_in_kilobytes = max_message_size_in_kilobytes - self.requires_duplicate_detection = requires_duplicate_detection - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - - -class SBQueueListResult(_serialization.Model): - """The response to the List Queues operation. - - :ivar value: Result of the List Queues operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of queues. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBQueue]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBQueue"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Queues operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of queues. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBSku(_serialization.Model): - """SKU of the namespace. - - All required parameters must be populated in order to send to server. - - :ivar name: Name of this SKU. Required. Known values are: "Basic", "Standard", and "Premium". - :vartype name: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.SkuName - :ivar tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", and - "Premium". - :vartype tier: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.SkuTier - :ivar capacity: Messaging units for your service bus premium namespace. Valid capacities are - {1, 2, 4, 8, 16} multiples of your properties.premiumMessagingPartitions setting. For example, - If properties.premiumMessagingPartitions is 1 then possible capacity values are 1, 2, 4, 8, and - 16. If properties.premiumMessagingPartitions is 4 then possible capacity values are 4, 8, 16, - 32 and 64. - :vartype capacity: int - """ - - _validation = { - "name": {"required": True}, - } - - _attribute_map = { - "name": {"key": "name", "type": "str"}, - "tier": {"key": "tier", "type": "str"}, - "capacity": {"key": "capacity", "type": "int"}, - } - - def __init__( - self, - *, - name: Union[str, "_models.SkuName"], - tier: Optional[Union[str, "_models.SkuTier"]] = None, - capacity: Optional[int] = None, - **kwargs: Any - ) -> None: - """ - :keyword name: Name of this SKU. Required. Known values are: "Basic", "Standard", and - "Premium". - :paramtype name: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.SkuName - :keyword tier: The billing tier of this particular SKU. Known values are: "Basic", "Standard", - and "Premium". - :paramtype tier: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.SkuTier - :keyword capacity: Messaging units for your service bus premium namespace. Valid capacities are - {1, 2, 4, 8, 16} multiples of your properties.premiumMessagingPartitions setting. For example, - If properties.premiumMessagingPartitions is 1 then possible capacity values are 1, 2, 4, 8, and - 16. If properties.premiumMessagingPartitions is 4 then possible capacity values are 4, 8, 16, - 32 and 64. - :paramtype capacity: int - """ - super().__init__(**kwargs) - self.name = name - self.tier = tier - self.capacity = capacity - - -class SBSubscription(ProxyResource): # pylint: disable=too-many-instance-attributes - """Description of subscription resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SystemData - :ivar message_count: Number of messages. - :vartype message_count: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar accessed_at: Last time there was a receive request to this subscription. - :vartype accessed_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2022_10_01_preview.models.MessageCountDetails - :ivar lock_duration: ISO 8061 lock duration timespan for the subscription. The default value is - 1 minute. - :vartype lock_duration: ~datetime.timedelta - :ivar requires_session: Value indicating if a subscription supports the concept of sessions. - :vartype requires_session: bool - :ivar default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :vartype dead_lettering_on_filter_evaluation_exceptions: bool - :ivar dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :vartype dead_lettering_on_message_expiration: bool - :ivar duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar max_delivery_count: Number of maximum deliveries. - :vartype max_delivery_count: int - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.EntityStatus - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar forward_to: Queue/Topic name to forward the messages. - :vartype forward_to: str - :ivar forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter message. - :vartype forward_dead_lettered_messages_to: str - :ivar is_client_affine: Value that indicates whether the subscription has an affinity to the - client id. - :vartype is_client_affine: bool - :ivar client_affine_properties: Properties specific to client affine subscriptions. - :vartype client_affine_properties: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBClientAffineProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "message_count": {"readonly": True}, - "created_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "message_count": {"key": "properties.messageCount", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "lock_duration": {"key": "properties.lockDuration", "type": "duration"}, - "requires_session": {"key": "properties.requiresSession", "type": "bool"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "dead_lettering_on_filter_evaluation_exceptions": { - "key": "properties.deadLetteringOnFilterEvaluationExceptions", - "type": "bool", - }, - "dead_lettering_on_message_expiration": {"key": "properties.deadLetteringOnMessageExpiration", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "max_delivery_count": {"key": "properties.maxDeliveryCount", "type": "int"}, - "status": {"key": "properties.status", "type": "str"}, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "forward_to": {"key": "properties.forwardTo", "type": "str"}, - "forward_dead_lettered_messages_to": {"key": "properties.forwardDeadLetteredMessagesTo", "type": "str"}, - "is_client_affine": {"key": "properties.isClientAffine", "type": "bool"}, - "client_affine_properties": {"key": "properties.clientAffineProperties", "type": "SBClientAffineProperties"}, - } - - def __init__( # pylint: disable=too-many-locals - self, - *, - lock_duration: Optional[datetime.timedelta] = None, - requires_session: Optional[bool] = None, - default_message_time_to_live: Optional[datetime.timedelta] = None, - dead_lettering_on_filter_evaluation_exceptions: Optional[bool] = None, - dead_lettering_on_message_expiration: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - max_delivery_count: Optional[int] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - enable_batched_operations: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - forward_to: Optional[str] = None, - forward_dead_lettered_messages_to: Optional[str] = None, - is_client_affine: Optional[bool] = None, - client_affine_properties: Optional["_models.SBClientAffineProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword lock_duration: ISO 8061 lock duration timespan for the subscription. The default value - is 1 minute. - :paramtype lock_duration: ~datetime.timedelta - :keyword requires_session: Value indicating if a subscription supports the concept of sessions. - :paramtype requires_session: bool - :keyword default_message_time_to_live: ISO 8061 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword dead_lettering_on_filter_evaluation_exceptions: Value that indicates whether a - subscription has dead letter support on filter evaluation exceptions. - :paramtype dead_lettering_on_filter_evaluation_exceptions: bool - :keyword dead_lettering_on_message_expiration: Value that indicates whether a subscription has - dead letter support when a message expires. - :paramtype dead_lettering_on_message_expiration: bool - :keyword duplicate_detection_history_time_window: ISO 8601 timeSpan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword max_delivery_count: Number of maximum deliveries. - :paramtype max_delivery_count: int - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.EntityStatus - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword auto_delete_on_idle: ISO 8061 timeSpan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword forward_to: Queue/Topic name to forward the messages. - :paramtype forward_to: str - :keyword forward_dead_lettered_messages_to: Queue/Topic name to forward the Dead Letter - message. - :paramtype forward_dead_lettered_messages_to: str - :keyword is_client_affine: Value that indicates whether the subscription has an affinity to the - client id. - :paramtype is_client_affine: bool - :keyword client_affine_properties: Properties specific to client affine subscriptions. - :paramtype client_affine_properties: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBClientAffineProperties - """ - super().__init__(**kwargs) - self.system_data = None - self.message_count = None - self.created_at = None - self.accessed_at = None - self.updated_at = None - self.count_details = None - self.lock_duration = lock_duration - self.requires_session = requires_session - self.default_message_time_to_live = default_message_time_to_live - self.dead_lettering_on_filter_evaluation_exceptions = dead_lettering_on_filter_evaluation_exceptions - self.dead_lettering_on_message_expiration = dead_lettering_on_message_expiration - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.max_delivery_count = max_delivery_count - self.status = status - self.enable_batched_operations = enable_batched_operations - self.auto_delete_on_idle = auto_delete_on_idle - self.forward_to = forward_to - self.forward_dead_lettered_messages_to = forward_dead_lettered_messages_to - self.is_client_affine = is_client_affine - self.client_affine_properties = client_affine_properties - - -class SBSubscriptionListResult(_serialization.Model): - """The response to the List Subscriptions operation. - - :ivar value: Result of the List Subscriptions operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of subscriptions. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBSubscription]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBSubscription"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Subscriptions operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of subscriptions. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SBTopic(ProxyResource): # pylint: disable=too-many-instance-attributes - """Description of topic resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. # pylint: disable=line-too-long - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.EventHub/Namespaces" or - "Microsoft.EventHub/Namespaces/EventHubs". - :vartype type: str - :ivar location: The geo-location where the resource lives. - :vartype location: str - :ivar system_data: The system meta data relating to this resource. - :vartype system_data: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SystemData - :ivar size_in_bytes: Size of the topic, in bytes. - :vartype size_in_bytes: int - :ivar created_at: Exact time the message was created. - :vartype created_at: ~datetime.datetime - :ivar updated_at: The exact time the message was updated. - :vartype updated_at: ~datetime.datetime - :ivar accessed_at: Last time the message was sent, or a request was received, for this topic. - :vartype accessed_at: ~datetime.datetime - :ivar subscription_count: Number of subscriptions. - :vartype subscription_count: int - :ivar count_details: Message count details. - :vartype count_details: ~azure.mgmt.servicebus.v2022_10_01_preview.models.MessageCountDetails - :ivar default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :vartype default_message_time_to_live: ~datetime.timedelta - :ivar max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of the - memory allocated for the topic. Default is 1024. - :vartype max_size_in_megabytes: int - :ivar max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the topic. This property is only used in Premium today and default is 1024. - :vartype max_message_size_in_kilobytes: int - :ivar requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :vartype requires_duplicate_detection: bool - :ivar duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :vartype duplicate_detection_history_time_window: ~datetime.timedelta - :ivar enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :vartype enable_batched_operations: bool - :ivar status: Enumerates the possible values for the status of a messaging entity. Known values - are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :vartype status: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.EntityStatus - :ivar support_ordering: Value that indicates whether the topic supports ordering. - :vartype support_ordering: bool - :ivar auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :vartype auto_delete_on_idle: ~datetime.timedelta - :ivar enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :vartype enable_partitioning: bool - :ivar enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :vartype enable_express: bool - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "location": {"readonly": True}, - "system_data": {"readonly": True}, - "size_in_bytes": {"readonly": True}, - "created_at": {"readonly": True}, - "updated_at": {"readonly": True}, - "accessed_at": {"readonly": True}, - "subscription_count": {"readonly": True}, - "count_details": {"readonly": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "location": {"key": "location", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "size_in_bytes": {"key": "properties.sizeInBytes", "type": "int"}, - "created_at": {"key": "properties.createdAt", "type": "iso-8601"}, - "updated_at": {"key": "properties.updatedAt", "type": "iso-8601"}, - "accessed_at": {"key": "properties.accessedAt", "type": "iso-8601"}, - "subscription_count": {"key": "properties.subscriptionCount", "type": "int"}, - "count_details": {"key": "properties.countDetails", "type": "MessageCountDetails"}, - "default_message_time_to_live": {"key": "properties.defaultMessageTimeToLive", "type": "duration"}, - "max_size_in_megabytes": {"key": "properties.maxSizeInMegabytes", "type": "int"}, - "max_message_size_in_kilobytes": {"key": "properties.maxMessageSizeInKilobytes", "type": "int"}, - "requires_duplicate_detection": {"key": "properties.requiresDuplicateDetection", "type": "bool"}, - "duplicate_detection_history_time_window": { - "key": "properties.duplicateDetectionHistoryTimeWindow", - "type": "duration", - }, - "enable_batched_operations": {"key": "properties.enableBatchedOperations", "type": "bool"}, - "status": {"key": "properties.status", "type": "str"}, - "support_ordering": {"key": "properties.supportOrdering", "type": "bool"}, - "auto_delete_on_idle": {"key": "properties.autoDeleteOnIdle", "type": "duration"}, - "enable_partitioning": {"key": "properties.enablePartitioning", "type": "bool"}, - "enable_express": {"key": "properties.enableExpress", "type": "bool"}, - } - - def __init__( - self, - *, - default_message_time_to_live: Optional[datetime.timedelta] = None, - max_size_in_megabytes: Optional[int] = None, - max_message_size_in_kilobytes: Optional[int] = None, - requires_duplicate_detection: Optional[bool] = None, - duplicate_detection_history_time_window: Optional[datetime.timedelta] = None, - enable_batched_operations: Optional[bool] = None, - status: Optional[Union[str, "_models.EntityStatus"]] = None, - support_ordering: Optional[bool] = None, - auto_delete_on_idle: Optional[datetime.timedelta] = None, - enable_partitioning: Optional[bool] = None, - enable_express: Optional[bool] = None, - **kwargs: Any - ) -> None: - """ - :keyword default_message_time_to_live: ISO 8601 Default message timespan to live value. This is - the duration after which the message expires, starting from when the message is sent to Service - Bus. This is the default value used when TimeToLive is not set on a message itself. - :paramtype default_message_time_to_live: ~datetime.timedelta - :keyword max_size_in_megabytes: Maximum size of the topic in megabytes, which is the size of - the memory allocated for the topic. Default is 1024. - :paramtype max_size_in_megabytes: int - :keyword max_message_size_in_kilobytes: Maximum size (in KB) of the message payload that can be - accepted by the topic. This property is only used in Premium today and default is 1024. - :paramtype max_message_size_in_kilobytes: int - :keyword requires_duplicate_detection: Value indicating if this topic requires duplicate - detection. - :paramtype requires_duplicate_detection: bool - :keyword duplicate_detection_history_time_window: ISO8601 timespan structure that defines the - duration of the duplicate detection history. The default value is 10 minutes. - :paramtype duplicate_detection_history_time_window: ~datetime.timedelta - :keyword enable_batched_operations: Value that indicates whether server-side batched operations - are enabled. - :paramtype enable_batched_operations: bool - :keyword status: Enumerates the possible values for the status of a messaging entity. Known - values are: "Active", "Disabled", "Restoring", "SendDisabled", "ReceiveDisabled", "Creating", - "Deleting", "Renaming", and "Unknown". - :paramtype status: str or ~azure.mgmt.servicebus.v2022_10_01_preview.models.EntityStatus - :keyword support_ordering: Value that indicates whether the topic supports ordering. - :paramtype support_ordering: bool - :keyword auto_delete_on_idle: ISO 8601 timespan idle interval after which the topic is - automatically deleted. The minimum duration is 5 minutes. - :paramtype auto_delete_on_idle: ~datetime.timedelta - :keyword enable_partitioning: Value that indicates whether the topic to be partitioned across - multiple message brokers is enabled. - :paramtype enable_partitioning: bool - :keyword enable_express: Value that indicates whether Express Entities are enabled. An express - topic holds a message in memory temporarily before writing it to persistent storage. - :paramtype enable_express: bool - """ - super().__init__(**kwargs) - self.system_data = None - self.size_in_bytes = None - self.created_at = None - self.updated_at = None - self.accessed_at = None - self.subscription_count = None - self.count_details = None - self.default_message_time_to_live = default_message_time_to_live - self.max_size_in_megabytes = max_size_in_megabytes - self.max_message_size_in_kilobytes = max_message_size_in_kilobytes - self.requires_duplicate_detection = requires_duplicate_detection - self.duplicate_detection_history_time_window = duplicate_detection_history_time_window - self.enable_batched_operations = enable_batched_operations - self.status = status - self.support_ordering = support_ordering - self.auto_delete_on_idle = auto_delete_on_idle - self.enable_partitioning = enable_partitioning - self.enable_express = enable_express - - -class SBTopicListResult(_serialization.Model): - """The response to the List Topics operation. - - :ivar value: Result of the List Topics operation. - :vartype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic] - :ivar next_link: Link to the next set of results. Not empty if Value contains incomplete list - of topics. - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[SBTopic]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.SBTopic"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: Result of the List Topics operation. - :paramtype value: list[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic] - :keyword next_link: Link to the next set of results. Not empty if Value contains incomplete - list of topics. - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class SqlFilter(_serialization.Model): - """Represents a filter which is a composition of an expression and an action that is executed in - the pub/sub pipeline. - - :ivar sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - _attribute_map = { - "sql_expression": {"key": "sqlExpression", "type": "str"}, - "compatibility_level": {"key": "compatibilityLevel", "type": "int"}, - "requires_preprocessing": {"key": "requiresPreprocessing", "type": "bool"}, - } - - def __init__( - self, - *, - sql_expression: Optional[str] = None, - compatibility_level: Optional[int] = None, - requires_preprocessing: bool = True, - **kwargs: Any - ) -> None: - """ - :keyword sql_expression: The SQL expression. e.g. MyProperty='ABC'. - :paramtype sql_expression: str - :keyword compatibility_level: This property is reserved for future use. An integer value - showing the compatibility level, currently hard-coded to 20. - :paramtype compatibility_level: int - :keyword requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :paramtype requires_preprocessing: bool - """ - super().__init__(**kwargs) - self.sql_expression = sql_expression - self.compatibility_level = compatibility_level - self.requires_preprocessing = requires_preprocessing - - -class SqlRuleAction(Action): - """Represents set of actions written in SQL language-based syntax that is performed against a - ServiceBus.Messaging.BrokeredMessage. - - :ivar sql_expression: SQL expression. e.g. MyProperty='ABC'. - :vartype sql_expression: str - :ivar compatibility_level: This property is reserved for future use. An integer value showing - the compatibility level, currently hard-coded to 20. - :vartype compatibility_level: int - :ivar requires_preprocessing: Value that indicates whether the rule action requires - preprocessing. - :vartype requires_preprocessing: bool - """ - - -class Subnet(_serialization.Model): - """Properties supplied for Subnet. - - All required parameters must be populated in order to send to server. - - :ivar id: Resource ID of Virtual Network Subnet. Required. - :vartype id: str - """ - - _validation = { - "id": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - } - - def __init__(self, *, id: str, **kwargs: Any) -> None: # pylint: disable=redefined-builtin - """ - :keyword id: Resource ID of Virtual Network Subnet. Required. - :paramtype id: str - """ - super().__init__(**kwargs) - self.id = id - - -class SystemData(_serialization.Model): - """Metadata pertaining to creation and last modification of the resource. - - :ivar created_by: The identity that created the resource. - :vartype created_by: str - :ivar created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :vartype created_by_type: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.CreatedByType - :ivar created_at: The timestamp of resource creation (UTC). - :vartype created_at: ~datetime.datetime - :ivar last_modified_by: The identity that last modified the resource. - :vartype last_modified_by: str - :ivar last_modified_by_type: The type of identity that last modified the resource. Known values - are: "User", "Application", "ManagedIdentity", and "Key". - :vartype last_modified_by_type: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.CreatedByType - :ivar last_modified_at: The type of identity that last modified the resource. - :vartype last_modified_at: ~datetime.datetime - """ - - _attribute_map = { - "created_by": {"key": "createdBy", "type": "str"}, - "created_by_type": {"key": "createdByType", "type": "str"}, - "created_at": {"key": "createdAt", "type": "iso-8601"}, - "last_modified_by": {"key": "lastModifiedBy", "type": "str"}, - "last_modified_by_type": {"key": "lastModifiedByType", "type": "str"}, - "last_modified_at": {"key": "lastModifiedAt", "type": "iso-8601"}, - } - - def __init__( - self, - *, - created_by: Optional[str] = None, - created_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - created_at: Optional[datetime.datetime] = None, - last_modified_by: Optional[str] = None, - last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, - last_modified_at: Optional[datetime.datetime] = None, - **kwargs: Any - ) -> None: - """ - :keyword created_by: The identity that created the resource. - :paramtype created_by: str - :keyword created_by_type: The type of identity that created the resource. Known values are: - "User", "Application", "ManagedIdentity", and "Key". - :paramtype created_by_type: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.CreatedByType - :keyword created_at: The timestamp of resource creation (UTC). - :paramtype created_at: ~datetime.datetime - :keyword last_modified_by: The identity that last modified the resource. - :paramtype last_modified_by: str - :keyword last_modified_by_type: The type of identity that last modified the resource. Known - values are: "User", "Application", "ManagedIdentity", and "Key". - :paramtype last_modified_by_type: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.CreatedByType - :keyword last_modified_at: The type of identity that last modified the resource. - :paramtype last_modified_at: ~datetime.datetime - """ - super().__init__(**kwargs) - self.created_by = created_by - self.created_by_type = created_by_type - self.created_at = created_at - self.last_modified_by = last_modified_by - self.last_modified_by_type = last_modified_by_type - self.last_modified_at = last_modified_at - - -class UserAssignedIdentity(_serialization.Model): - """Recognized Dictionary value. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar principal_id: Principal Id of user assigned identity. - :vartype principal_id: str - :ivar client_id: Client Id of user assigned identity. - :vartype client_id: str - """ - - _validation = { - "principal_id": {"readonly": True}, - "client_id": {"readonly": True}, - } - - _attribute_map = { - "principal_id": {"key": "principalId", "type": "str"}, - "client_id": {"key": "clientId", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.principal_id = None - self.client_id = None - - -class UserAssignedIdentityProperties(_serialization.Model): - """UserAssignedIdentityProperties. - - :ivar user_assigned_identity: ARM ID of user Identity selected for encryption. - :vartype user_assigned_identity: str - """ - - _attribute_map = { - "user_assigned_identity": {"key": "userAssignedIdentity", "type": "str"}, - } - - def __init__(self, *, user_assigned_identity: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword user_assigned_identity: ARM ID of user Identity selected for encryption. - :paramtype user_assigned_identity: str - """ - super().__init__(**kwargs) - self.user_assigned_identity = user_assigned_identity diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_service_bus_management_client_enums.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_service_bus_management_client_enums.py deleted file mode 100644 index c133c2caad54..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/models/_service_bus_management_client_enums.py +++ /dev/null @@ -1,173 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from enum import Enum -from azure.core import CaseInsensitiveEnumMeta - - -class AccessRights(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """AccessRights.""" - - MANAGE = "Manage" - SEND = "Send" - LISTEN = "Listen" - - -class CreatedByType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The type of identity that created the resource.""" - - USER = "User" - APPLICATION = "Application" - MANAGED_IDENTITY = "ManagedIdentity" - KEY = "Key" - - -class DefaultAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Default Action for Network Rule Set.""" - - ALLOW = "Allow" - DENY = "Deny" - - -class EndPointProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Private Endpoint Connection.""" - - CREATING = "Creating" - UPDATING = "Updating" - DELETING = "Deleting" - SUCCEEDED = "Succeeded" - CANCELED = "Canceled" - FAILED = "Failed" - - -class EntityStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Entity status.""" - - ACTIVE = "Active" - DISABLED = "Disabled" - RESTORING = "Restoring" - SEND_DISABLED = "SendDisabled" - RECEIVE_DISABLED = "ReceiveDisabled" - CREATING = "Creating" - DELETING = "Deleting" - RENAMING = "Renaming" - UNKNOWN = "Unknown" - - -class FilterType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Rule filter types.""" - - SQL_FILTER = "SqlFilter" - CORRELATION_FILTER = "CorrelationFilter" - - -class KeyType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The access key to regenerate.""" - - PRIMARY_KEY = "PrimaryKey" - SECONDARY_KEY = "SecondaryKey" - - -class ManagedServiceIdentityType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Type of managed service identity.""" - - SYSTEM_ASSIGNED = "SystemAssigned" - USER_ASSIGNED = "UserAssigned" - SYSTEM_ASSIGNED_USER_ASSIGNED = "SystemAssigned, UserAssigned" - NONE = "None" - - -class MigrationConfigurationName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """MigrationConfigurationName.""" - - _DEFAULT = "$default" - - -class NetworkRuleIPAction(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The IP Filter Action.""" - - ALLOW = "Allow" - - -class PrivateLinkConnectionStatus(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Status of the connection.""" - - PENDING = "Pending" - APPROVED = "Approved" - REJECTED = "Rejected" - DISCONNECTED = "Disconnected" - - -class ProvisioningStateDR(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Provisioning state of the Alias(Disaster Recovery configuration) - possible values 'Accepted' - or 'Succeeded' or 'Failed'. - """ - - ACCEPTED = "Accepted" - SUCCEEDED = "Succeeded" - FAILED = "Failed" - - -class PublicNetworkAccess(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """This determines if traffic is allowed over public network. By default it is enabled.""" - - ENABLED = "Enabled" - DISABLED = "Disabled" - SECURED_BY_PERIMETER = "SecuredByPerimeter" - - -class PublicNetworkAccessFlag(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """This determines if traffic is allowed over public network. By default it is enabled.""" - - ENABLED = "Enabled" - DISABLED = "Disabled" - - -class RoleDisasterRecovery(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """role of namespace in GEO DR - possible values 'Primary' or 'PrimaryNotReplicating' or - 'Secondary'. - """ - - PRIMARY = "Primary" - PRIMARY_NOT_REPLICATING = "PrimaryNotReplicating" - SECONDARY = "Secondary" - - -class SkuName(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Name of this SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class SkuTier(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The billing tier of this particular SKU.""" - - BASIC = "Basic" - STANDARD = "Standard" - PREMIUM = "Premium" - - -class TlsVersion(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """The minimum TLS version for the cluster to support, e.g. '1.2'.""" - - ONE0 = "1.0" - ONE1 = "1.1" - ONE2 = "1.2" - - -class UnavailableReason(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Specifies the reason for the unavailability of the service.""" - - NONE = "None" - INVALID_NAME = "InvalidName" - SUBSCRIPTION_IS_DISABLED = "SubscriptionIsDisabled" - NAME_IN_USE = "NameInUse" - NAME_IN_LOCKDOWN = "NameInLockdown" - TOO_MANY_NAMESPACE_IN_CURRENT_SUBSCRIPTION = "TooManyNamespaceInCurrentSubscription" diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/__init__.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/__init__.py deleted file mode 100644 index e5431803c533..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/__init__.py +++ /dev/null @@ -1,37 +0,0 @@ -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- - -from ._namespaces_operations import NamespacesOperations -from ._private_endpoint_connections_operations import PrivateEndpointConnectionsOperations -from ._private_link_resources_operations import PrivateLinkResourcesOperations -from ._operations import Operations -from ._disaster_recovery_configs_operations import DisasterRecoveryConfigsOperations -from ._migration_configs_operations import MigrationConfigsOperations -from ._queues_operations import QueuesOperations -from ._topics_operations import TopicsOperations -from ._rules_operations import RulesOperations -from ._subscriptions_operations import SubscriptionsOperations - -from ._patch import __all__ as _patch_all -from ._patch import * # pylint: disable=unused-wildcard-import -from ._patch import patch_sdk as _patch_sdk - -__all__ = [ - "NamespacesOperations", - "PrivateEndpointConnectionsOperations", - "PrivateLinkResourcesOperations", - "Operations", - "DisasterRecoveryConfigsOperations", - "MigrationConfigsOperations", - "QueuesOperations", - "TopicsOperations", - "RulesOperations", - "SubscriptionsOperations", -] -__all__.extend([p for p in _patch_all if p not in __all__]) -_patch_sdk() diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_disaster_recovery_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_disaster_recovery_configs_operations.py deleted file mode 100644 index ede06b19e64a..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_disaster_recovery_configs_operations.py +++ /dev/null @@ -1,1333 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_break_pairing_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/breakPairing", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_fail_over_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/failover", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, alias: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - alias: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/{alias}/authorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "alias": _SERIALIZER.url("alias", alias, "str", max_length=50, min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_check_name_availability_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/disasterRecoveryConfigs/CheckNameAvailability", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class DisasterRecoveryConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.ServiceBusManagementClient`'s - :attr:`disaster_recovery_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.ArmDisasterRecovery"]: - """Gets all Alias(Disaster Recovery configurations). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either ArmDisasterRecovery or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecoveryListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("ArmDisasterRecoveryListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: _models.ArmDisasterRecovery, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Union[_models.ArmDisasterRecovery, IO[bytes]], - **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Creates or updates a new Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a ArmDisasterRecovery type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery or - IO[bytes] - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "ArmDisasterRecovery") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """Deletes an Alias(Disaster Recovery configuration). - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> _models.ArmDisasterRecovery: - """Retrieves Alias(Disaster Recovery configuration) for primary or secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: ArmDisasterRecovery or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.ArmDisasterRecovery - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.ArmDisasterRecovery] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("ArmDisasterRecovery", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def break_pairing( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> None: - """This operation disables the Disaster Recovery and stops replicating changes from primary to - secondary namespaces. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_break_pairing_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[_models.FailoverProperties] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.FailoverProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[IO[bytes]] = None, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). - Default value is None. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def fail_over( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - alias: str, - parameters: Optional[Union[_models.FailoverProperties, IO[bytes]]] = None, - **kwargs: Any - ) -> None: - """Invokes GEO DR failover and reconfigure the alias to point to the secondary namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param parameters: Parameters required to create an Alias(Disaster Recovery configuration). Is - either a FailoverProperties type or a IO[bytes] type. Default value is None. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.FailoverProperties or - IO[bytes] - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[None] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - if parameters is not None: - _json = self._serialize.body(parameters, "FailoverProperties") - else: - _json = None - - _request = build_fail_over_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, alias: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, alias: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param alias: The Disaster Recovery configuration name. Required. - :type alias: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - alias=alias, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.CheckNameAvailability, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.CheckNameAvailability, IO[bytes]], - **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_migration_configs_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_migration_configs_operations.py deleted file mode 100644 index f20d9465b603..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_migration_configs_operations.py +++ /dev/null @@ -1,852 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_and_start_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_complete_migration_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/upgrade", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_revert_request( - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/migrationConfigurations/{configName}/revert", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "configName": _SERIALIZER.url("config_name", config_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class MigrationConfigsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.ServiceBusManagementClient`'s - :attr:`migration_configs` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.MigrationConfigProperties"]: - """Gets all migrationConfigurations. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either MigrationConfigProperties or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.MigrationConfigListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("MigrationConfigListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_and_start_migration_initial( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "MigrationConfigProperties") - - _request = build_create_and_start_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: _models.MigrationConfigProperties, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_and_start_migration( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - parameters: Union[_models.MigrationConfigProperties, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.MigrationConfigProperties]: - """Creates Migration configuration and starts migration of entities from Standard to Premium - namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :param parameters: Parameters required to create Migration Configuration. Is either a - MigrationConfigProperties type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties - or IO[bytes] - :return: An instance of LROPoller that returns either MigrationConfigProperties or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_and_start_migration_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.MigrationConfigProperties].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.MigrationConfigProperties]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """Deletes a MigrationConfiguration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> _models.MigrationConfigProperties: - """Retrieves Migration Config. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :return: MigrationConfigProperties or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigProperties - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.MigrationConfigProperties] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("MigrationConfigProperties", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def complete_migration( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation Completes Migration of entities by pointing the connection strings to Premium - namespace and any entities created after the operation will be under Premium Namespace. - CompleteMigration operation will fail when entity migration is in-progress. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_complete_migration_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def revert( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - config_name: Union[str, _models.MigrationConfigurationName], - **kwargs: Any - ) -> None: - """This operation reverts Migration. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param config_name: The configuration name. Should always be "$default". "$default" Required. - :type config_name: str or - ~azure.mgmt.servicebus.v2022_10_01_preview.models.MigrationConfigurationName - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_revert_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - config_name=config_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_namespaces_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_namespaces_operations.py deleted file mode 100644 index 71b8ee39ffc0..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_namespaces_operations.py +++ /dev/null @@ -1,2242 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/namespaces") - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_resource_group_request(resource_group_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str"), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_update_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PATCH", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_network_rule_set_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_network_rule_set_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets/default", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_network_rule_sets_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/networkRuleSets", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/listKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, namespace_name: str, authorization_rule_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_check_name_availability_request(subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceBus/CheckNameAvailability" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -class NamespacesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.ServiceBusManagementClient`'s - :attr:`namespaces` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets all the available namespaces within the subscription, irrespective of the resource groups. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_by_resource_group(self, resource_group_name: str, **kwargs: Any) -> Iterable["_models.SBNamespace"]: - """Gets the available namespaces within a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :return: An iterator like instance of either SBNamespace or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBNamespaceListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_resource_group_request( - resource_group_name=resource_group_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBNamespaceListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - def _create_or_update_initial( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespace") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespace, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create_or_update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespace, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.SBNamespace]: - """Creates or updates a service namespace. Once created, this namespace's resource manifest is - immutable. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to create a namespace resource. Is either a SBNamespace - type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace or IO[bytes] - :return: An instance of LROPoller that returns either SBNamespace or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._create_or_update_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - parameters=parameters, - api_version=api_version, - content_type=content_type, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - return deserialized - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.SBNamespace].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.SBNamespace]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _delete_initial(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> LROPoller[None]: - """Deletes an existing namespace. This operation also removes all associated resources under the - namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, **kwargs: Any) -> _models.SBNamespace: - """Gets a description for the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: SBNamespace or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBNamespace] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.SBNamespaceUpdateParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespaceUpdateParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def update( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.SBNamespaceUpdateParameters, IO[bytes]], - **kwargs: Any - ) -> Optional[_models.SBNamespace]: - """Updates a service namespace. Once created, this namespace's resource manifest is immutable. - This operation is idempotent. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: Parameters supplied to update a namespace resource. Is either a - SBNamespaceUpdateParameters type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespaceUpdateParameters - or IO[bytes] - :return: SBNamespace or None or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBNamespace or None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[Optional[_models.SBNamespace]] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBNamespaceUpdateParameters") - - _request = build_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = None - deserialized = self._deserialize("SBNamespace", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: _models.NetworkRuleSet, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_network_rule_set( - self, - resource_group_name: str, - namespace_name: str, - parameters: Union[_models.NetworkRuleSet, IO[bytes]], - **kwargs: Any - ) -> _models.NetworkRuleSet: - """Create or update NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param parameters: The Namespace IpFilterRule. Is either a NetworkRuleSet type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet or IO[bytes] - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "NetworkRuleSet") - - _request = build_create_or_update_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_network_rule_set( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.NetworkRuleSet: - """Gets NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: NetworkRuleSet or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.NetworkRuleSet] = kwargs.pop("cls", None) - - _request = build_get_network_rule_set_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("NetworkRuleSet", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_network_rule_sets( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.NetworkRuleSet"]: - """Gets list of NetworkRuleSet for a Namespace. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either NetworkRuleSet or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.NetworkRuleSet] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.NetworkRuleSetListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_network_rule_sets_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("NetworkRuleSetListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets the authorization rules for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639376.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates or updates an authorization rule for a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639410.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> None: - """Deletes a namespace authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639417.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a namespace by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639392.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, resource_group_name: str, namespace_name: str, authorization_rule_name: str, **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639398.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings for the namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt718977.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def check_name_availability( - self, parameters: _models.CheckNameAvailability, *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailability - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def check_name_availability( - self, parameters: IO[bytes], *, content_type: str = "application/json", **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def check_name_availability( - self, parameters: Union[_models.CheckNameAvailability, IO[bytes]], **kwargs: Any - ) -> _models.CheckNameAvailabilityResult: - """Check the give namespace name availability. - - :param parameters: Parameters to check availability of the given namespace name. Is either a - CheckNameAvailability type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailability or - IO[bytes] - :return: CheckNameAvailabilityResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.CheckNameAvailabilityResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.CheckNameAvailabilityResult] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "CheckNameAvailability") - - _request = build_check_name_availability_request( - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("CheckNameAvailabilityResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_operations.py deleted file mode 100644 index d91b1b7eb4bf..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_operations.py +++ /dev/null @@ -1,156 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Iterable, Optional, Type, TypeVar -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request(**kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop("template_url", "/providers/Microsoft.ServiceBus/operations") - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class Operations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.ServiceBusManagementClient`'s - :attr:`operations` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.Operation"]: - """Lists all of the available ServiceBus REST API operations. - - :return: An iterator like instance of either Operation or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.Operation] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.OperationListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("OperationListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_patch.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_patch.py deleted file mode 100644 index f7dd32510333..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_patch.py +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. -# ------------------------------------ -"""Customize generated code here. - -Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize -""" -from typing import List - -__all__: List[str] = [] # Add all objects you want publicly available to users at this package level - - -def patch_sdk(): - """Do not remove from this file. - - `patch_sdk` is a last resort escape hatch that allows you to do customizations - you can't accomplish using the techniques described in - https://aka.ms/azsdk/python/dpcodegen/python/customize - """ diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_private_endpoint_connections_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_private_endpoint_connections_operations.py deleted file mode 100644 index 1335ea551009..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_private_endpoint_connections_operations.py +++ /dev/null @@ -1,644 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, Type, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - StreamClosedError, - StreamConsumedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.polling import LROPoller, NoPolling, PollingMethod -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat -from azure.mgmt.core.polling.arm_polling import ARMPolling - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "privateEndpointConnectionName": _SERIALIZER.url( - "private_endpoint_connection_name", private_endpoint_connection_name, "str" - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateEndpointConnectionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.ServiceBusManagementClient`'s - :attr:`private_endpoint_connections` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> Iterable["_models.PrivateEndpointConnection"]: - """Gets the available PrivateEndpointConnections within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639412.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: An iterator like instance of either PrivateEndpointConnection or the result of - cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnectionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("PrivateEndpointConnectionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: _models.PrivateEndpointConnection, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - private_endpoint_connection_name: str, - parameters: Union[_models.PrivateEndpointConnection, IO[bytes]], - **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Creates or updates PrivateEndpointConnections of service namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639408.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :param parameters: Parameters supplied to update Status of PrivateEndPoint Connection to - namespace resource. Is either a PrivateEndpointConnection type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - or IO[bytes] - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "PrivateEndpointConnection") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 201, 202]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - def _delete_initial( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _decompress = kwargs.pop("decompress", True) - _stream = True - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 202, 204]: - try: - response.read() # Load the body in memory and close the socket - except (StreamConsumedError, StreamClosedError): - pass - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def begin_delete( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> LROPoller[None]: - """Deletes an existing Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639389.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: An instance of LROPoller that returns either None or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[None] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - polling: Union[bool, PollingMethod] = kwargs.pop("polling", True) - lro_delay = kwargs.pop("polling_interval", self._config.polling_interval) - cont_token: Optional[str] = kwargs.pop("continuation_token", None) - if cont_token is None: - raw_result = self._delete_initial( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - api_version=api_version, - cls=lambda x, y, z: x, - headers=_headers, - params=_params, - **kwargs - ) - raw_result.http_response.read() # type: ignore - kwargs.pop("error_map", None) - - def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - if polling is True: - polling_method: PollingMethod = cast(PollingMethod, ARMPolling(lro_delay, **kwargs)) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[None].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, private_endpoint_connection_name: str, **kwargs: Any - ) -> _models.PrivateEndpointConnection: - """Gets a description for the specified Private Endpoint Connection. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param private_endpoint_connection_name: The PrivateEndpointConnection name. Required. - :type private_endpoint_connection_name: str - :return: PrivateEndpointConnection or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateEndpointConnection - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.PrivateEndpointConnection] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - private_endpoint_connection_name=private_endpoint_connection_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateEndpointConnection", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_private_link_resources_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_private_link_resources_operations.py deleted file mode 100644 index f83bbdfd596f..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_private_link_resources_operations.py +++ /dev/null @@ -1,153 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -import sys -from typing import Any, Callable, Dict, Optional, Type, TypeVar - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_get_request( - resource_group_name: str, namespace_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/privateLinkResources", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class PrivateLinkResourcesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.ServiceBusManagementClient`'s - :attr:`private_link_resources` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, **kwargs: Any - ) -> _models.PrivateLinkResourcesListResult: - """Gets lists of resources that supports Privatelinks. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639379.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :return: PrivateLinkResourcesListResult or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.PrivateLinkResourcesListResult - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.PrivateLinkResourcesListResult] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("PrivateLinkResourcesListResult", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_queues_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_queues_operations.py deleted file mode 100644 index 253adf1c1ce4..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_queues_operations.py +++ /dev/null @@ -1,1453 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, queue_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "queueName": _SERIALIZER.url("queue_name", queue_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class QueuesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.ServiceBusManagementClient`'s - :attr:`queues` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets all authorization rules for a queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705607.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for a queue. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a queue authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705609.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Gets an authorization rule for a queue by rule name. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705611.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Primary and secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705608.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates the primary or secondary connection strings to the queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt705606.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBQueue"]: - """Gets the queues within a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639415.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBQueue or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBQueueListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBQueueListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: _models.SBQueue, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - queue_name: str, - parameters: Union[_models.SBQueue, IO[bytes]], - **kwargs: Any - ) -> _models.SBQueue: - """Creates or updates a Service Bus queue. This operation is idempotent. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639395.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :param parameters: Parameters supplied to create or update a queue resource. Is either a - SBQueue type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue or IO[bytes] - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBQueue") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any - ) -> None: - """Deletes a queue from the specified namespace in a resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639411.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, queue_name: str, **kwargs: Any) -> _models.SBQueue: - """Returns a description for the specified queue. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639380.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param queue_name: The queue name. Required. - :type queue_name: str - :return: SBQueue or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBQueue - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBQueue] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - queue_name=queue_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBQueue", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_rules_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_rules_operations.py deleted file mode 100644 index 25e223b9ecc6..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_rules_operations.py +++ /dev/null @@ -1,648 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_subscriptions_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}/rules/{ruleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "ruleName": _SERIALIZER.url("rule_name", rule_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class RulesOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.ServiceBusManagementClient`'s - :attr:`rules` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_subscriptions( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.Rule"]: - """List all the rules within given topic-subscription. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either Rule or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.RuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_subscriptions_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("RuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: _models.Rule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - parameters: Union[_models.Rule, IO[bytes]], - **kwargs: Any - ) -> _models.Rule: - """Creates a new rule and updates an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :param parameters: Parameters supplied to create a rule. Is either a Rule type or a IO[bytes] - type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule or IO[bytes] - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "Rule") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> None: - """Deletes an existing rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - rule_name: str, - **kwargs: Any - ) -> _models.Rule: - """Retrieves the description for the specified rule. - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param rule_name: The rule name. Required. - :type rule_name: str - :return: Rule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.Rule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.Rule] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - rule_name=rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("Rule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_subscriptions_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_subscriptions_operations.py deleted file mode 100644 index 5f16f051c4bf..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_subscriptions_operations.py +++ /dev/null @@ -1,627 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_by_topic_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/subscriptions/{subscriptionName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionName": _SERIALIZER.url("subscription_name", subscription_name, "str", max_length=50, min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class SubscriptionsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.ServiceBusManagementClient`'s - :attr:`subscriptions` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_by_topic( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBSubscription"]: - """List all the subscriptions under a specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639400.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBSubscription or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBSubscriptionListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_topic_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBSubscriptionListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: _models.SBSubscription, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - subscription_name: str, - parameters: Union[_models.SBSubscription, IO[bytes]], - **kwargs: Any - ) -> _models.SBSubscription: - """Creates a topic subscription. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639385.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :param parameters: Parameters supplied to create a subscription resource. Is either a - SBSubscription type or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription or IO[bytes] - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBSubscription") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> None: - """Deletes a subscription from the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639381.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get( - self, resource_group_name: str, namespace_name: str, topic_name: str, subscription_name: str, **kwargs: Any - ) -> _models.SBSubscription: - """Returns a subscription description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639402.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param subscription_name: The subscription name. Required. - :type subscription_name: str - :return: SBSubscription or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBSubscription - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBSubscription] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_name=subscription_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBSubscription", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_topics_operations.py b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_topics_operations.py deleted file mode 100644 index bfaa972136eb..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/operations/_topics_operations.py +++ /dev/null @@ -1,1462 +0,0 @@ -# pylint: disable=too-many-lines,too-many-statements -# coding=utf-8 -# -------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for license information. -# Code generated by Microsoft (R) AutoRest Code Generator. -# Changes may cause incorrect behavior and will be lost if the code is regenerated. -# -------------------------------------------------------------------------- -from io import IOBase -import sys -from typing import Any, Callable, Dict, IO, Iterable, Optional, Type, TypeVar, Union, overload -import urllib.parse - -from azure.core.exceptions import ( - ClientAuthenticationError, - HttpResponseError, - ResourceExistsError, - ResourceNotFoundError, - ResourceNotModifiedError, - map_error, -) -from azure.core.paging import ItemPaged -from azure.core.pipeline import PipelineResponse -from azure.core.rest import HttpRequest, HttpResponse -from azure.core.tracing.decorator import distributed_trace -from azure.core.utils import case_insensitive_dict -from azure.mgmt.core.exceptions import ARMErrorFormat - -from .. import models as _models -from ..._serialization import Serializer - -if sys.version_info >= (3, 9): - from collections.abc import MutableMapping -else: - from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] - -_SERIALIZER = Serializer() -_SERIALIZER.client_side_validation = False - - -def build_list_authorization_rules_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_authorization_rule_request( # pylint: disable=name-too-long - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_authorization_rule_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/ListKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_regenerate_keys_request( - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - subscription_id: str, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}/authorizationRules/{authorizationRuleName}/regenerateKeys", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "authorizationRuleName": _SERIALIZER.url( - "authorization_rule_name", authorization_rule_name, "str", max_length=50, min_length=1 - ), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_list_by_namespace_request( - resource_group_name: str, - namespace_name: str, - subscription_id: str, - *, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if skip is not None: - _params["$skip"] = _SERIALIZER.query("skip", skip, "int", maximum=1000, minimum=0) - if top is not None: - _params["$top"] = _SERIALIZER.query("top", top, "int", maximum=1000, minimum=1) - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_create_or_update_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - if content_type is not None: - _headers["Content-Type"] = _SERIALIZER.header("content_type", content_type, "str") - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="PUT", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_delete_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="DELETE", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_get_request( - resource_group_name: str, namespace_name: str, topic_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-10-01-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/topics/{topicName}", - ) # pylint: disable=line-too-long - path_format_arguments = { - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "namespaceName": _SERIALIZER.url("namespace_name", namespace_name, "str", max_length=50, min_length=6), - "topicName": _SERIALIZER.url("topic_name", topic_name, "str", min_length=1), - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -class TopicsOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.servicebus.v2022_10_01_preview.ServiceBusManagementClient`'s - :attr:`topics` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client = input_args.pop(0) if input_args else kwargs.pop("client") - self._config = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer") - self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version") - - @distributed_trace - def list_authorization_rules( - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> Iterable["_models.SBAuthorizationRule"]: - """Gets authorization rules for a topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: An iterator like instance of either SBAuthorizationRule or the result of cls(response) - :rtype: - ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRuleListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_authorization_rules_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBAuthorizationRuleListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.SBAuthorizationRule, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.SBAuthorizationRule, IO[bytes]], - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Creates an authorization rule for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720678.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: The shared access authorization rule. Is either a SBAuthorizationRule type - or a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule or - IO[bytes] - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBAuthorizationRule") - - _request = build_create_or_update_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def get_authorization_rule( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.SBAuthorizationRule: - """Returns the specified authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720676.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: SBAuthorizationRule or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBAuthorizationRule - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBAuthorizationRule] = kwargs.pop("cls", None) - - _request = build_get_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBAuthorizationRule", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete_authorization_rule( # pylint: disable=inconsistent-return-statements - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> None: - """Deletes a topic authorization rule. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720681.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_authorization_rule_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def list_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - **kwargs: Any - ) -> _models.AccessKeys: - """Gets the primary and secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720677.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - _request = build_list_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: _models.RegenerateAccessKeyParameters, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def regenerate_keys( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - authorization_rule_name: str, - parameters: Union[_models.RegenerateAccessKeyParameters, IO[bytes]], - **kwargs: Any - ) -> _models.AccessKeys: - """Regenerates primary or secondary connection strings for the topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt720679.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param authorization_rule_name: The authorization rule name. Required. - :type authorization_rule_name: str - :param parameters: Parameters supplied to regenerate the authorization rule. Is either a - RegenerateAccessKeyParameters type or a IO[bytes] type. Required. - :type parameters: - ~azure.mgmt.servicebus.v2022_10_01_preview.models.RegenerateAccessKeyParameters or IO[bytes] - :return: AccessKeys or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.AccessKeys - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.AccessKeys] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "RegenerateAccessKeyParameters") - - _request = build_regenerate_keys_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - authorization_rule_name=authorization_rule_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("AccessKeys", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def list_by_namespace( - self, - resource_group_name: str, - namespace_name: str, - skip: Optional[int] = None, - top: Optional[int] = None, - **kwargs: Any - ) -> Iterable["_models.SBTopic"]: - """Gets all the topics in a namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639388.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param skip: Skip is only used if a previous operation returned a partial result. If a previous - response contains a nextLink element, the value of the nextLink element will include a skip - parameter that specifies a starting point to use for subsequent calls. Default value is None. - :type skip: int - :param top: May be used to limit the number of results to the most recent N usageDetails. - Default value is None. - :type top: int - :return: An iterator like instance of either SBTopic or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBTopicListResult] = kwargs.pop("cls", None) - - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - def prepare_request(next_link=None): - if not next_link: - - _request = build_list_by_namespace_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - subscription_id=self._config.subscription_id, - skip=skip, - top=top, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - else: - # make call to next link with the client's api-version - _parsed_next_link = urllib.parse.urlparse(next_link) - _next_request_params = case_insensitive_dict( - { - key: [urllib.parse.quote(v) for v in value] - for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items() - } - ) - _next_request_params["api-version"] = self._api_version - _request = HttpRequest( - "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params - ) - _request.url = self._client.format_url(_request.url) - _request.method = "GET" - return _request - - def extract_data(pipeline_response): - deserialized = self._deserialize("SBTopicListResult", pipeline_response) - list_of_elem = deserialized.value - if cls: - list_of_elem = cls(list_of_elem) # type: ignore - return deserialized.next_link or None, iter(list_of_elem) - - def get_next(next_link=None): - _request = prepare_request(next_link) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - return pipeline_response - - return ItemPaged(get_next, extract_data) - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: _models.SBTopic, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic - :keyword content_type: Body Parameter content-type. Content type parameter for JSON body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Required. - :type parameters: IO[bytes] - :keyword content_type: Body Parameter content-type. Content type parameter for binary body. - Default value is "application/json". - :paramtype content_type: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def create_or_update( - self, - resource_group_name: str, - namespace_name: str, - topic_name: str, - parameters: Union[_models.SBTopic, IO[bytes]], - **kwargs: Any - ) -> _models.SBTopic: - """Creates a topic in the specified namespace. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639409.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :param parameters: Parameters supplied to create a topic resource. Is either a SBTopic type or - a IO[bytes] type. Required. - :type parameters: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic or IO[bytes] - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - content_type = content_type or "application/json" - _json = None - _content = None - if isinstance(parameters, (IOBase, bytes)): - _content = parameters - else: - _json = self._serialize.body(parameters, "SBTopic") - - _request = build_create_or_update_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - content_type=content_type, - json=_json, - content=_content, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore - - @distributed_trace - def delete( # pylint: disable=inconsistent-return-statements - self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any - ) -> None: - """Deletes a topic from the specified namespace and resource group. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639404.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: None or the result of cls(response) - :rtype: None - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[None] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200, 204]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - if cls: - return cls(pipeline_response, None, {}) # type: ignore - - @distributed_trace - def get(self, resource_group_name: str, namespace_name: str, topic_name: str, **kwargs: Any) -> _models.SBTopic: - """Returns a description for the specified topic. - - .. seealso:: - - https://msdn.microsoft.com/en-us/library/azure/mt639399.aspx - - :param resource_group_name: Name of the Resource group within the Azure subscription. Required. - :type resource_group_name: str - :param namespace_name: The namespace name. Required. - :type namespace_name: str - :param topic_name: The topic name. Required. - :type topic_name: str - :return: SBTopic or the result of cls(response) - :rtype: ~azure.mgmt.servicebus.v2022_10_01_preview.models.SBTopic - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping[int, Type[HttpResponseError]] = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop( - "api_version", _params.pop("api-version", self._api_version or "2022-10-01-preview") - ) - cls: ClsType[_models.SBTopic] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - namespace_name=namespace_name, - topic_name=topic_name, - subscription_id=self._config.subscription_id, - api_version=api_version, - headers=_headers, - params=_params, - ) - _request.url = self._client.format_url(_request.url) - - _stream = False - pipeline_response: PipelineResponse = self._client._pipeline.run( # pylint: disable=protected-access - _request, stream=_stream, **kwargs - ) - - response = pipeline_response.http_response - - if response.status_code not in [200]: - map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) - raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) - - deserialized = self._deserialize("SBTopic", pipeline_response.http_response) - - if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore - - return deserialized # type: ignore diff --git a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/py.typed b/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/py.typed deleted file mode 100644 index e5aff4f83af8..000000000000 --- a/sdk/servicebus/azure-mgmt-servicebus/azure/mgmt/servicebus/v2022_10_01_preview/py.typed +++ /dev/null @@ -1 +0,0 @@ -# Marker file for PEP 561. \ No newline at end of file diff --git a/sdk/servicebus/azure-mgmt-servicebus/setup.py b/sdk/servicebus/azure-mgmt-servicebus/setup.py index 3d05c534fbf1..4c5a3d52c9ad 100644 --- a/sdk/servicebus/azure-mgmt-servicebus/setup.py +++ b/sdk/servicebus/azure-mgmt-servicebus/setup.py @@ -22,11 +22,9 @@ # Version extraction inspired from 'requests' with open( - ( - os.path.join(package_folder_path, "version.py") - if os.path.exists(os.path.join(package_folder_path, "version.py")) - else os.path.join(package_folder_path, "_version.py") - ), + os.path.join(package_folder_path, "version.py") + if os.path.exists(os.path.join(package_folder_path, "version.py")) + else os.path.join(package_folder_path, "_version.py"), "r", ) as fd: version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', fd.read(), re.MULTILINE).group(1)