From 53789ab84260fc7eb7076c856685e60ca640407d Mon Sep 17 00:00:00 2001 From: Yuchao Yan Date: Thu, 7 May 2026 01:59:42 +0000 Subject: [PATCH 1/2] regenerate with latest codegen --- .../CHANGELOG.md | 4 + .../azure-mgmt-confidentialledger/MANIFEST.in | 9 +- .../azure-mgmt-confidentialledger/README.md | 4 +- .../azure-mgmt-confidentialledger/_meta.json | 11 - .../_metadata.json | 11 + .../apiview-properties.json | 43 + .../azure/__init__.py | 2 +- .../azure/mgmt/__init__.py | 2 +- .../_confidential_ledger.py | 34 +- .../mgmt/confidentialledger/_configuration.py | 24 +- .../_utils/serialization.py | 43 +- .../azure/mgmt/confidentialledger/_version.py | 2 +- .../aio/_confidential_ledger.py | 34 +- .../confidentialledger/aio/_configuration.py | 24 +- .../aio/operations/__init__.py | 6 +- .../_confidential_ledger_operations.py | 14 +- .../aio/operations/_ledger_operations.py | 484 +----- .../aio/operations/_managed_ccf_operations.py | 1192 -------------- .../aio/operations/_operations.py | 12 +- .../confidentialledger/models/__init__.py | 44 +- .../models/_confidential_ledger_enums.py | 43 - .../confidentialledger/models/_models_py3.py | 766 +-------- .../confidentialledger/operations/__init__.py | 6 +- .../_confidential_ledger_operations.py | 18 +- .../operations/_ledger_operations.py | 611 +------ .../operations/_managed_ccf_operations.py | 1437 ----------------- .../operations/_operations.py | 16 +- .../check_name_availability.py | 2 +- .../confidential_ledger_backup.py | 44 - .../confidential_ledger_create.py | 9 +- .../confidential_ledger_delete.py | 2 +- .../confidential_ledger_get.py | 2 +- .../confidential_ledger_list.py | 2 +- .../confidential_ledger_list_by_sub.py | 2 +- .../confidential_ledger_restore.py | 44 - .../confidential_ledger_update.py | 2 +- .../generated_samples/managed_ccf_delete.py | 42 - .../generated_samples/managed_ccf_get.py | 43 - .../generated_samples/managed_ccf_list.py | 43 - .../managed_ccf_list_by_sub.py | 41 - .../generated_samples/operations_get.py | 2 +- .../test_confidential_ledger.py | 2 +- .../test_confidential_ledger_async.py | 2 +- ...t_confidential_ledger_ledger_operations.py | 62 +- ...idential_ledger_ledger_operations_async.py | 66 +- .../test_confidential_ledger_operations.py | 2 +- ...st_confidential_ledger_operations_async.py | 2 +- .../pyproject.toml | 82 + .../sdk_packaging.toml | 10 - .../azure-mgmt-confidentialledger/setup.py | 82 - 50 files changed, 526 insertions(+), 4960 deletions(-) delete mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/_meta.json create mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/_metadata.json create mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/apiview-properties.json delete mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_managed_ccf_operations.py delete mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_managed_ccf_operations.py delete mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_backup.py delete mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_restore.py delete mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_delete.py delete mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_get.py delete mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_list.py delete mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_list_by_sub.py delete mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/sdk_packaging.toml delete mode 100644 sdk/confidentialledger/azure-mgmt-confidentialledger/setup.py diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/CHANGELOG.md b/sdk/confidentialledger/azure-mgmt-confidentialledger/CHANGELOG.md index 1de366fe1420..5c13d9156262 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/CHANGELOG.md +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/CHANGELOG.md @@ -1,5 +1,9 @@ # Release History +## 1.1.0 (2026-05-07) + +skip changelog generation + ## 2.0.0b5 (2025-05-19) ### Features Added diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/MANIFEST.in b/sdk/confidentialledger/azure-mgmt-confidentialledger/MANIFEST.in index 9ed12ad91ff9..3f3f018c6b90 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/MANIFEST.in +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/MANIFEST.in @@ -1,8 +1,7 @@ -include _meta.json -recursive-include tests *.py *.json -recursive-include samples *.py *.md include *.md -include azure/__init__.py -include azure/mgmt/__init__.py include LICENSE include azure/mgmt/confidentialledger/py.typed +recursive-include tests *.py +recursive-include samples *.py *.md +include azure/__init__.py +include azure/mgmt/__init__.py diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/README.md b/sdk/confidentialledger/azure-mgmt-confidentialledger/README.md index 4d404bcf9ab2..a2e70a474fb8 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/README.md +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/README.md @@ -1,7 +1,7 @@ # Microsoft Azure SDK for Python This is the Microsoft Azure Confidential Ledger Management Client Library. -This package has been tested with Python 3.9+. +This package has been tested with Python 3.10+. For a more complete view of Azure libraries, see the [azure sdk python release](https://aka.ms/azsdk/python/all). ## _Disclaimer_ @@ -12,7 +12,7 @@ _Azure SDK Python packages support for Python 2.7 has ended 01 January 2022. For ### Prerequisites -- Python 3.9+ is required to use this package. +- Python 3.10+ is required to use this package. - [Azure subscription](https://azure.microsoft.com/free/) ### Install the package diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/_meta.json b/sdk/confidentialledger/azure-mgmt-confidentialledger/_meta.json deleted file mode 100644 index d0e6ffbc6ae3..000000000000 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/_meta.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commit": "40c12a2dd76da721d480d55a44e6ec666045d508", - "repository_url": "https://github.com/Azure/azure-rest-api-specs", - "autorest": "3.10.2", - "use": [ - "@autorest/python@6.34.1", - "@autorest/modelerfour@4.27.0" - ], - "autorest_command": "autorest specification/confidentialledger/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.34.1 --use=@autorest/modelerfour@4.27.0 --version=3.10.2 --version-tolerant=False", - "readme": "specification/confidentialledger/resource-manager/readme.md" -} \ No newline at end of file diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/_metadata.json b/sdk/confidentialledger/azure-mgmt-confidentialledger/_metadata.json new file mode 100644 index 000000000000..e8947647bfb3 --- /dev/null +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/_metadata.json @@ -0,0 +1,11 @@ +{ + "commit": "994e2132b8c3533657ab86c11a6c39875f779d22", + "repository_url": "https://github.com/Azure/azure-rest-api-specs", + "autorest": "3.10.2", + "use": [ + "@autorest/python@6.50.0", + "@autorest/modelerfour@4.27.0" + ], + "autorest_command": "autorest specification/confidentialledger/resource-manager/readme.md --generate-sample=True --generate-test=True --include-x-ms-examples-original-file=True --package-mode=azure-mgmt --python --python-sdks-folder=/home/codespace/workspace/sdk --tag=package-2022-05-13 --use=@autorest/python@6.50.0 --use=@autorest/modelerfour@4.27.0 --version=3.10.2 --version-tolerant=False", + "readme": "specification/confidentialledger/resource-manager/readme.md" +} \ No newline at end of file diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/apiview-properties.json b/sdk/confidentialledger/azure-mgmt-confidentialledger/apiview-properties.json new file mode 100644 index 000000000000..c207ef2eff2e --- /dev/null +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/apiview-properties.json @@ -0,0 +1,43 @@ +{ + "CrossLanguagePackageId": null, + "CrossLanguageDefinitionId": { + "azure.mgmt.confidentialledger.models.AADBasedSecurityPrincipal": null, + "azure.mgmt.confidentialledger.models.CertBasedSecurityPrincipal": null, + "azure.mgmt.confidentialledger.models.CheckNameAvailabilityRequest": null, + "azure.mgmt.confidentialledger.models.CheckNameAvailabilityResponse": null, + "azure.mgmt.confidentialledger.models.Tags": null, + "azure.mgmt.confidentialledger.models.ResourceLocation": null, + "azure.mgmt.confidentialledger.models.Resource": null, + "azure.mgmt.confidentialledger.models.ConfidentialLedger": null, + "azure.mgmt.confidentialledger.models.ConfidentialLedgerList": null, + "azure.mgmt.confidentialledger.models.ErrorAdditionalInfo": null, + "azure.mgmt.confidentialledger.models.ErrorDetail": null, + "azure.mgmt.confidentialledger.models.ErrorResponse": null, + "azure.mgmt.confidentialledger.models.LedgerProperties": null, + "azure.mgmt.confidentialledger.models.ResourceProviderOperationDefinition": null, + "azure.mgmt.confidentialledger.models.ResourceProviderOperationDisplay": null, + "azure.mgmt.confidentialledger.models.ResourceProviderOperationList": null, + "azure.mgmt.confidentialledger.models.SystemData": null, + "azure.mgmt.confidentialledger.models.LedgerRoleName": null, + "azure.mgmt.confidentialledger.models.CreatedByType": null, + "azure.mgmt.confidentialledger.models.LedgerType": null, + "azure.mgmt.confidentialledger.models.ProvisioningState": null, + "azure.mgmt.confidentialledger.models.CheckNameAvailabilityReason": null, + "azure.mgmt.confidentialledger.operations.Operations.list": null, + "azure.mgmt.confidentialledger.aio.operations.Operations.list": null, + "azure.mgmt.confidentialledger.ConfidentialLedger.check_name_availability": null, + "azure.mgmt.confidentialledger.aio.ConfidentialLedger.check_name_availability": null, + "azure.mgmt.confidentialledger.operations.LedgerOperations.get": null, + "azure.mgmt.confidentialledger.aio.operations.LedgerOperations.get": null, + "azure.mgmt.confidentialledger.operations.LedgerOperations.begin_delete": null, + "azure.mgmt.confidentialledger.aio.operations.LedgerOperations.begin_delete": null, + "azure.mgmt.confidentialledger.operations.LedgerOperations.begin_create": null, + "azure.mgmt.confidentialledger.aio.operations.LedgerOperations.begin_create": null, + "azure.mgmt.confidentialledger.operations.LedgerOperations.begin_update": null, + "azure.mgmt.confidentialledger.aio.operations.LedgerOperations.begin_update": null, + "azure.mgmt.confidentialledger.operations.LedgerOperations.list_by_resource_group": null, + "azure.mgmt.confidentialledger.aio.operations.LedgerOperations.list_by_resource_group": null, + "azure.mgmt.confidentialledger.operations.LedgerOperations.list_by_subscription": null, + "azure.mgmt.confidentialledger.aio.operations.LedgerOperations.list_by_subscription": null + } +} \ No newline at end of file diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/__init__.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/__init__.py index 8db66d3d0f0f..d55ccad1f573 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/__init__.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/__init__.py @@ -1 +1 @@ -__path__ = __import__("pkgutil").extend_path(__path__, __name__) +__path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/__init__.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/__init__.py index 8db66d3d0f0f..d55ccad1f573 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/__init__.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/__init__.py @@ -1 +1 @@ -__path__ = __import__("pkgutil").extend_path(__path__, __name__) +__path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_confidential_ledger.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_confidential_ledger.py index ad426127888e..0ad8abb1ca8f 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_confidential_ledger.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_confidential_ledger.py @@ -20,44 +20,57 @@ from . import models as _models from ._configuration import ConfidentialLedgerConfiguration from ._utils.serialization import Deserializer, Serializer -from .operations import ConfidentialLedgerOperationsMixin, LedgerOperations, ManagedCCFOperations, Operations +from .operations import LedgerOperations, Operations, _ConfidentialLedgerOperationsMixin if TYPE_CHECKING: + from azure.core import AzureClouds from azure.core.credentials import TokenCredential -class ConfidentialLedger(ConfidentialLedgerOperationsMixin): +class ConfidentialLedger(_ConfidentialLedgerOperationsMixin): """Microsoft Azure Confidential Compute Ledger Control Plane REST API version 2020-12-01-preview. :ivar operations: Operations operations :vartype operations: azure.mgmt.confidentialledger.operations.Operations :ivar ledger: LedgerOperations operations :vartype ledger: azure.mgmt.confidentialledger.operations.LedgerOperations - :ivar managed_ccf: ManagedCCFOperations operations - :vartype managed_ccf: azure.mgmt.confidentialledger.operations.ManagedCCFOperations :param credential: Credential needed for the client to connect to Azure. Required. :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: The ID of the target subscription. Required. + :param subscription_id: The Azure subscription ID. This is a GUID-formatted string (e.g. + 00000000-0000-0000-0000-000000000000). Required. :type subscription_id: str :param base_url: Service URL. Default value is None. :type base_url: str - :keyword api_version: Api Version. Default value is "2024-09-19-preview". Note that overriding - this default value may result in unsupported behavior. + :keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is + None. + :paramtype cloud_setting: ~azure.core.AzureClouds + :keyword api_version: Api Version. Default value is "2022-05-13". 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: Optional[str] = None, **kwargs: Any + self, + credential: "TokenCredential", + subscription_id: str, + base_url: Optional[str] = None, + *, + cloud_setting: Optional["AzureClouds"] = None, + **kwargs: Any ) -> None: - _cloud = kwargs.pop("cloud_setting", None) or settings.current.azure_cloud # type: ignore + _cloud = cloud_setting or settings.current.azure_cloud # type: ignore _endpoints = get_arm_endpoints(_cloud) if not base_url: base_url = _endpoints["resource_manager"] credential_scopes = kwargs.pop("credential_scopes", _endpoints["credential_scopes"]) self._config = ConfidentialLedgerConfiguration( - credential=credential, subscription_id=subscription_id, credential_scopes=credential_scopes, **kwargs + credential=credential, + subscription_id=subscription_id, + cloud_setting=cloud_setting, + credential_scopes=credential_scopes, + **kwargs ) _policies = kwargs.pop("policies", None) @@ -86,7 +99,6 @@ def __init__( self._serialize.client_side_validation = False self.operations = Operations(self._client, self._config, self._serialize, self._deserialize) self.ledger = LedgerOperations(self._client, self._config, self._serialize, self._deserialize) - self.managed_ccf = ManagedCCFOperations(self._client, self._config, self._serialize, self._deserialize) def _send_request(self, request: HttpRequest, *, stream: bool = False, **kwargs: Any) -> HttpResponse: """Runs the network request through the client's chained policies. diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_configuration.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_configuration.py index c7a1426ca5a9..683cfaae78a6 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_configuration.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_configuration.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -from typing import Any, TYPE_CHECKING +from typing import Any, Optional, TYPE_CHECKING from azure.core.pipeline import policies from azure.mgmt.core.policies import ARMChallengeAuthenticationPolicy, ARMHttpLoggingPolicy @@ -14,6 +14,7 @@ from ._version import VERSION if TYPE_CHECKING: + from azure.core import AzureClouds from azure.core.credentials import TokenCredential @@ -25,15 +26,25 @@ class ConfidentialLedgerConfiguration: # pylint: disable=too-many-instance-attr :param credential: Credential needed for the client to connect to Azure. Required. :type credential: ~azure.core.credentials.TokenCredential - :param subscription_id: The ID of the target subscription. Required. + :param subscription_id: The Azure subscription ID. This is a GUID-formatted string (e.g. + 00000000-0000-0000-0000-000000000000). Required. :type subscription_id: str - :keyword api_version: Api Version. Default value is "2024-09-19-preview". Note that overriding - this default value may result in unsupported behavior. + :param cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is + None. + :type cloud_setting: ~azure.core.AzureClouds + :keyword api_version: Api Version. Default value is "2022-05-13". 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", "2024-09-19-preview") + def __init__( + self, + credential: "TokenCredential", + subscription_id: str, + cloud_setting: Optional["AzureClouds"] = None, + **kwargs: Any + ) -> None: + api_version: str = kwargs.pop("api_version", "2022-05-13") if credential is None: raise ValueError("Parameter 'credential' must not be None.") @@ -42,6 +53,7 @@ def __init__(self, credential: "TokenCredential", subscription_id: str, **kwargs self.credential = credential self.subscription_id = subscription_id + self.cloud_setting = cloud_setting self.api_version = api_version self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) kwargs.setdefault("sdk_moniker", "mgmt-confidentialledger/{}".format(VERSION)) diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_utils/serialization.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_utils/serialization.py index f5187701d7be..6da830e0cf4a 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_utils/serialization.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_utils/serialization.py @@ -21,7 +21,6 @@ import sys import codecs from typing import ( - Dict, Any, cast, Optional, @@ -31,7 +30,6 @@ Mapping, Callable, MutableMapping, - List, ) try: @@ -229,12 +227,12 @@ class Model: serialization and deserialization. """ - _subtype_map: Dict[str, Dict[str, Any]] = {} - _attribute_map: Dict[str, Dict[str, Any]] = {} - _validation: Dict[str, Dict[str, Any]] = {} + _subtype_map: dict[str, dict[str, Any]] = {} + _attribute_map: dict[str, dict[str, Any]] = {} + _validation: dict[str, dict[str, Any]] = {} def __init__(self, **kwargs: Any) -> None: - self.additional_properties: Optional[Dict[str, Any]] = {} + self.additional_properties: Optional[dict[str, Any]] = {} for k in kwargs: # pylint: disable=consider-using-dict-items if k not in self._attribute_map: _LOGGER.warning("%s is not a known attribute of class %s and will be ignored", k, self.__class__) @@ -311,7 +309,7 @@ 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. @@ -380,7 +378,7 @@ def deserialize(cls, data: Any, content_type: Optional[str] = None) -> Self: def from_dict( cls, data: Any, - key_extractors: Optional[Callable[[str, Dict[str, Any], Any], Any]] = None, + key_extractors: Optional[Callable[[str, dict[str, Any], Any], Any]] = None, content_type: Optional[str] = None, ) -> Self: """Parse a dict using given key extractor return a model. @@ -414,7 +412,7 @@ def _flatten_subtype(cls, key, objects): return {} result = dict(cls._subtype_map[key]) for valuetype in cls._subtype_map[key].values(): - result.update(objects[valuetype]._flatten_subtype(key, objects)) # pylint: disable=protected-access + result |= objects[valuetype]._flatten_subtype(key, objects) # pylint: disable=protected-access return result @classmethod @@ -528,7 +526,7 @@ def __init__(self, classes: Optional[Mapping[str, type]] = None) -> None: "[]": self.serialize_iter, "{}": self.serialize_dict, } - self.dependencies: Dict[str, type] = dict(classes) if classes else {} + self.dependencies: dict[str, type] = dict(classes) if classes else {} self.key_transformer = full_restapi_key_transformer self.client_side_validation = True @@ -579,7 +577,7 @@ def _serialize( # pylint: disable=too-many-nested-blocks, too-many-branches, to if attr_name == "additional_properties" and attr_desc["key"] == "": if target_obj.additional_properties is not None: - serialized.update(target_obj.additional_properties) + serialized |= target_obj.additional_properties continue try: @@ -789,7 +787,7 @@ def serialize_data(self, data, data_type, **kwargs): # If dependencies is empty, try with current data class # It has to be a subclass of Enum anyway - enum_type = self.dependencies.get(data_type, data.__class__) + enum_type = self.dependencies.get(data_type, cast(type, data.__class__)) if issubclass(enum_type, Enum): return Serializer.serialize_enum(data, enum_obj=enum_type) @@ -823,13 +821,20 @@ def serialize_basic(cls, data, data_type, **kwargs): :param str data_type: Type of object in the iterable. :rtype: str, int, float, bool :return: serialized object + :raises TypeError: raise if data_type is not one of str, int, float, bool. """ custom_serializer = cls._get_custom_serializers(data_type, **kwargs) if custom_serializer: return custom_serializer(data) if data_type == "str": return cls.serialize_unicode(data) - return eval(data_type)(data) # nosec # pylint: disable=eval-used + if data_type == "int": + return int(data) + if data_type == "float": + return float(data) + if data_type == "bool": + return bool(data) + raise TypeError("Unknown basic data type: {}".format(data_type)) @classmethod def serialize_unicode(cls, data): @@ -1184,7 +1189,7 @@ def rest_key_extractor(attr, attr_desc, data): # pylint: disable=unused-argumen while "." in key: # Need the cast, as for some reasons "split" is typed as list[str | Any] - dict_keys = cast(List[str], _FLATTEN.split(key)) + dict_keys = cast(list[str], _FLATTEN.split(key)) if len(dict_keys) == 1: key = _decode_attribute_map_key(dict_keys[0]) break @@ -1386,7 +1391,7 @@ def __init__(self, classes: Optional[Mapping[str, type]] = None) -> None: "duration": (isodate.Duration, datetime.timedelta), "iso-8601": (datetime.datetime), } - self.dependencies: Dict[str, type] = dict(classes) if classes else {} + self.dependencies: dict[str, type] = dict(classes) if classes else {} self.key_extractors = [rest_key_extractor, xml_key_extractor] # Additional properties only works if the "rest_key_extractor" is used to # extract the keys. Making it to work whatever the key extractor is too much @@ -1759,7 +1764,7 @@ def deserialize_basic(self, attr, data_type): # pylint: disable=too-many-return :param str data_type: deserialization data type. :return: Deserialized basic type. :rtype: str, int, float or bool - :raises TypeError: if string format is not valid. + :raises TypeError: if string format is not valid or data_type is not one of str, int, float, bool. """ # If we're here, data is supposed to be a basic type. # If it's still an XML node, take the text @@ -1785,7 +1790,11 @@ def deserialize_basic(self, attr, data_type): # pylint: disable=too-many-return if data_type == "str": return self.deserialize_unicode(attr) - return eval(data_type)(attr) # nosec # pylint: disable=eval-used + if data_type == "int": + return int(attr) + if data_type == "float": + return float(attr) + raise TypeError("Unknown basic data type: {}".format(data_type)) @staticmethod def deserialize_unicode(data): diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_version.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_version.py index 6399a016fdd6..59deb8c7263b 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_version.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_version.py @@ -6,4 +6,4 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -VERSION = "2.0.0b5" +VERSION = "1.1.0" diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/_confidential_ledger.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/_confidential_ledger.py index 09cfeffbb285..6c870639c205 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/_confidential_ledger.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/_confidential_ledger.py @@ -20,44 +20,57 @@ from .. import models as _models from .._utils.serialization import Deserializer, Serializer from ._configuration import ConfidentialLedgerConfiguration -from .operations import ConfidentialLedgerOperationsMixin, LedgerOperations, ManagedCCFOperations, Operations +from .operations import LedgerOperations, Operations, _ConfidentialLedgerOperationsMixin if TYPE_CHECKING: + from azure.core import AzureClouds from azure.core.credentials_async import AsyncTokenCredential -class ConfidentialLedger(ConfidentialLedgerOperationsMixin): +class ConfidentialLedger(_ConfidentialLedgerOperationsMixin): """Microsoft Azure Confidential Compute Ledger Control Plane REST API version 2020-12-01-preview. :ivar operations: Operations operations :vartype operations: azure.mgmt.confidentialledger.aio.operations.Operations :ivar ledger: LedgerOperations operations :vartype ledger: azure.mgmt.confidentialledger.aio.operations.LedgerOperations - :ivar managed_ccf: ManagedCCFOperations operations - :vartype managed_ccf: azure.mgmt.confidentialledger.aio.operations.ManagedCCFOperations :param credential: Credential needed for the client to connect to Azure. Required. :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: The ID of the target subscription. Required. + :param subscription_id: The Azure subscription ID. This is a GUID-formatted string (e.g. + 00000000-0000-0000-0000-000000000000). Required. :type subscription_id: str :param base_url: Service URL. Default value is None. :type base_url: str - :keyword api_version: Api Version. Default value is "2024-09-19-preview". Note that overriding - this default value may result in unsupported behavior. + :keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is + None. + :paramtype cloud_setting: ~azure.core.AzureClouds + :keyword api_version: Api Version. Default value is "2022-05-13". 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: Optional[str] = None, **kwargs: Any + self, + credential: "AsyncTokenCredential", + subscription_id: str, + base_url: Optional[str] = None, + *, + cloud_setting: Optional["AzureClouds"] = None, + **kwargs: Any ) -> None: - _cloud = kwargs.pop("cloud_setting", None) or settings.current.azure_cloud # type: ignore + _cloud = cloud_setting or settings.current.azure_cloud # type: ignore _endpoints = get_arm_endpoints(_cloud) if not base_url: base_url = _endpoints["resource_manager"] credential_scopes = kwargs.pop("credential_scopes", _endpoints["credential_scopes"]) self._config = ConfidentialLedgerConfiguration( - credential=credential, subscription_id=subscription_id, credential_scopes=credential_scopes, **kwargs + credential=credential, + subscription_id=subscription_id, + cloud_setting=cloud_setting, + credential_scopes=credential_scopes, + **kwargs ) _policies = kwargs.pop("policies", None) @@ -88,7 +101,6 @@ def __init__( self._serialize.client_side_validation = False self.operations = Operations(self._client, self._config, self._serialize, self._deserialize) self.ledger = LedgerOperations(self._client, self._config, self._serialize, self._deserialize) - self.managed_ccf = ManagedCCFOperations(self._client, self._config, self._serialize, self._deserialize) def _send_request( self, request: HttpRequest, *, stream: bool = False, **kwargs: Any diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/_configuration.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/_configuration.py index e78e4da6fd62..8bb437b07d32 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/_configuration.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/_configuration.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -from typing import Any, TYPE_CHECKING +from typing import Any, Optional, TYPE_CHECKING from azure.core.pipeline import policies from azure.mgmt.core.policies import ARMHttpLoggingPolicy, AsyncARMChallengeAuthenticationPolicy @@ -14,6 +14,7 @@ from .._version import VERSION if TYPE_CHECKING: + from azure.core import AzureClouds from azure.core.credentials_async import AsyncTokenCredential @@ -25,15 +26,25 @@ class ConfidentialLedgerConfiguration: # pylint: disable=too-many-instance-attr :param credential: Credential needed for the client to connect to Azure. Required. :type credential: ~azure.core.credentials_async.AsyncTokenCredential - :param subscription_id: The ID of the target subscription. Required. + :param subscription_id: The Azure subscription ID. This is a GUID-formatted string (e.g. + 00000000-0000-0000-0000-000000000000). Required. :type subscription_id: str - :keyword api_version: Api Version. Default value is "2024-09-19-preview". Note that overriding - this default value may result in unsupported behavior. + :param cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is + None. + :type cloud_setting: ~azure.core.AzureClouds + :keyword api_version: Api Version. Default value is "2022-05-13". 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", "2024-09-19-preview") + def __init__( + self, + credential: "AsyncTokenCredential", + subscription_id: str, + cloud_setting: Optional["AzureClouds"] = None, + **kwargs: Any + ) -> None: + api_version: str = kwargs.pop("api_version", "2022-05-13") if credential is None: raise ValueError("Parameter 'credential' must not be None.") @@ -42,6 +53,7 @@ def __init__(self, credential: "AsyncTokenCredential", subscription_id: str, **k self.credential = credential self.subscription_id = subscription_id + self.cloud_setting = cloud_setting self.api_version = api_version self.credential_scopes = kwargs.pop("credential_scopes", ["https://management.azure.com/.default"]) kwargs.setdefault("sdk_moniker", "mgmt-confidentialledger/{}".format(VERSION)) diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/__init__.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/__init__.py index fd122374c751..ff8528275c9f 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/__init__.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/__init__.py @@ -1,3 +1,4 @@ +# pylint: disable=line-too-long,useless-suppression # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,9 +14,8 @@ from ._patch import * # pylint: disable=unused-wildcard-import from ._operations import Operations # type: ignore -from ._confidential_ledger_operations import ConfidentialLedgerOperationsMixin # type: ignore +from ._confidential_ledger_operations import _ConfidentialLedgerOperationsMixin # type: ignore # pylint: disable=unused-import from ._ledger_operations import LedgerOperations # type: ignore -from ._managed_ccf_operations import ManagedCCFOperations # type: ignore from ._patch import __all__ as _patch_all from ._patch import * @@ -23,9 +23,7 @@ __all__ = [ "Operations", - "ConfidentialLedgerOperationsMixin", "LedgerOperations", - "ManagedCCFOperations", ] __all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore _patch_sdk() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_confidential_ledger_operations.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_confidential_ledger_operations.py index da3f24d8e6af..a078072b4f48 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_confidential_ledger_operations.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_confidential_ledger_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import AsyncPipelineClient from azure.core.exceptions import ( @@ -31,10 +31,13 @@ from .._configuration import ConfidentialLedgerConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list -class ConfidentialLedgerOperationsMixin(ClientMixinABC[AsyncPipelineClient, ConfidentialLedgerConfiguration]): +class _ConfidentialLedgerOperationsMixin( + ClientMixinABC[AsyncPipelineClient[HttpRequest, AsyncHttpResponse], ConfidentialLedgerConfiguration] +): @overload async def check_name_availability( @@ -130,7 +133,10 @@ async def check_name_availability( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("CheckNameAvailabilityResponse", pipeline_response.http_response) diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_ledger_operations.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_ledger_operations.py index 7bbc686af7ee..25c254d3deeb 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_ledger_operations.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_ledger_operations.py @@ -1,4 +1,3 @@ -# pylint: disable=too-many-lines # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. @@ -8,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload +from typing import Any, AsyncIterator, Callable, IO, Optional, TypeVar, Union, cast, overload import urllib.parse from azure.core import AsyncPipelineClient @@ -35,19 +34,18 @@ from ... import models as _models from ..._utils.serialization import Deserializer, Serializer from ...operations._ledger_operations import ( - build_backup_request, build_create_request, build_delete_request, build_get_request, build_list_by_resource_group_request, build_list_by_subscription_request, - build_restore_request, build_update_request, ) from .._configuration import ConfidentialLedgerConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class LedgerOperations: @@ -75,8 +73,7 @@ async def get(self, resource_group_name: str, ledger_name: str, **kwargs: Any) - Retrieves the properties of a Confidential Ledger. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -117,7 +114,10 @@ async def get(self, resource_group_name: str, ledger_name: str, **kwargs: Any) - if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ConfidentialLedger", pipeline_response.http_response) @@ -166,13 +166,23 @@ async def _delete_initial(self, resource_group_name: str, ledger_name: str, **kw 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) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore @@ -182,8 +192,7 @@ async def begin_delete(self, resource_group_name: str, ledger_name: str, **kwarg Deletes an existing Confidential Ledger. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -288,7 +297,10 @@ async def _create_initial( 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) + 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) @@ -312,8 +324,7 @@ async def begin_create( Creates a Confidential Ledger with the specified ledger parameters. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -343,8 +354,7 @@ async def begin_create( Creates a Confidential Ledger with the specified ledger parameters. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -372,8 +382,7 @@ async def begin_create( Creates a Confidential Ledger with the specified ledger parameters. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -494,7 +503,10 @@ async def _update_initial( 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) + 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) @@ -518,8 +530,7 @@ async def begin_update( Updates properties of Confidential Ledger. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -549,8 +560,7 @@ async def begin_update( Updates properties of Confidential Ledger. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -578,8 +588,7 @@ async def begin_update( Updates properties of Confidential Ledger. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -643,14 +652,13 @@ def get_long_running_output(pipeline_response): @distributed_trace def list_by_resource_group( self, resource_group_name: str, filter: Optional[str] = None, **kwargs: Any - ) -> AsyncIterable["_models.ConfidentialLedger"]: + ) -> AsyncItemPaged["_models.ConfidentialLedger"]: """Retrieves information about all Confidential Ledger resources under the given subscription and resource group. Retrieves the properties of all Confidential Ledgers. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param filter: The filter to apply on the list operation. eg. $filter=ledgerType eq 'Public'. Default value is None. @@ -722,7 +730,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -732,7 +743,7 @@ async def get_next(next_link=None): @distributed_trace def list_by_subscription( self, filter: Optional[str] = None, **kwargs: Any - ) -> AsyncIterable["_models.ConfidentialLedger"]: + ) -> AsyncItemPaged["_models.ConfidentialLedger"]: """Retrieves information about all Confidential Ledger resources under the given subscription. Retrieves the properties of all Confidential Ledgers. @@ -806,415 +817,12 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + 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 _backup_initial( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: Union[_models.ConfidentialLedgerBackup, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(confidential_ledger, (IOBase, bytes)): - _content = confidential_ledger - else: - _json = self._serialize.body(confidential_ledger, "ConfidentialLedgerBackup") - - _request = build_backup_request( - resource_group_name=resource_group_name, - ledger_name=ledger_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, 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_backup( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: _models.ConfidentialLedgerBackup, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ConfidentialLedgerBackupResponse]: - """Performs the backup operation on a Confidential Ledger Resource. - - Backs up a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Backup Request Body. Required. - :type confidential_ledger: ~azure.mgmt.confidentialledger.models.ConfidentialLedgerBackup - :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 ConfidentialLedgerBackupResponse or - the result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerBackupResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_backup( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ConfidentialLedgerBackupResponse]: - """Performs the backup operation on a Confidential Ledger Resource. - - Backs up a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Backup Request Body. Required. - :type confidential_ledger: IO[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 ConfidentialLedgerBackupResponse or - the result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerBackupResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_backup( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: Union[_models.ConfidentialLedgerBackup, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.ConfidentialLedgerBackupResponse]: - """Performs the backup operation on a Confidential Ledger Resource. - - Backs up a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Backup Request Body. Is either a - ConfidentialLedgerBackup type or a IO[bytes] type. Required. - :type confidential_ledger: ~azure.mgmt.confidentialledger.models.ConfidentialLedgerBackup or - IO[bytes] - :return: An instance of AsyncLROPoller that returns either ConfidentialLedgerBackupResponse or - the result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerBackupResponse] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ConfidentialLedgerBackupResponse] = 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._backup_initial( - resource_group_name=resource_group_name, - ledger_name=ledger_name, - confidential_ledger=confidential_ledger, - 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("ConfidentialLedgerBackupResponse", 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.ConfidentialLedgerBackupResponse].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.ConfidentialLedgerBackupResponse]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _restore_initial( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: Union[_models.ConfidentialLedgerRestore, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(confidential_ledger, (IOBase, bytes)): - _content = confidential_ledger - else: - _json = self._serialize.body(confidential_ledger, "ConfidentialLedgerRestore") - - _request = build_restore_request( - resource_group_name=resource_group_name, - ledger_name=ledger_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, 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_restore( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: _models.ConfidentialLedgerRestore, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ConfidentialLedgerRestoreResponse]: - """Performs the restore operation to spin up a newly restored Confidential Ledger Resource. - - Restores a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Restore Request Body. Required. - :type confidential_ledger: ~azure.mgmt.confidentialledger.models.ConfidentialLedgerRestore - :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 ConfidentialLedgerRestoreResponse or - the result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerRestoreResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_restore( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ConfidentialLedgerRestoreResponse]: - """Performs the restore operation to spin up a newly restored Confidential Ledger Resource. - - Restores a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Restore Request Body. Required. - :type confidential_ledger: IO[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 ConfidentialLedgerRestoreResponse or - the result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerRestoreResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_restore( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: Union[_models.ConfidentialLedgerRestore, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.ConfidentialLedgerRestoreResponse]: - """Performs the restore operation to spin up a newly restored Confidential Ledger Resource. - - Restores a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Restore Request Body. Is either a - ConfidentialLedgerRestore type or a IO[bytes] type. Required. - :type confidential_ledger: ~azure.mgmt.confidentialledger.models.ConfidentialLedgerRestore or - IO[bytes] - :return: An instance of AsyncLROPoller that returns either ConfidentialLedgerRestoreResponse or - the result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerRestoreResponse] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ConfidentialLedgerRestoreResponse] = 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._restore_initial( - resource_group_name=resource_group_name, - ledger_name=ledger_name, - confidential_ledger=confidential_ledger, - 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("ConfidentialLedgerRestoreResponse", 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.ConfidentialLedgerRestoreResponse].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.ConfidentialLedgerRestoreResponse]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_managed_ccf_operations.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_managed_ccf_operations.py deleted file mode 100644 index e2d3b0b07a92..000000000000 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_managed_ccf_operations.py +++ /dev/null @@ -1,1192 +0,0 @@ -# pylint: disable=too-many-lines -# 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 collections.abc import MutableMapping -from io import IOBase -from typing import Any, AsyncIterable, AsyncIterator, Callable, Dict, IO, Optional, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core import AsyncPipelineClient -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 ..._utils.serialization import Deserializer, Serializer -from ...operations._managed_ccf_operations import ( - build_backup_request, - build_create_request, - build_delete_request, - build_get_request, - build_list_by_resource_group_request, - build_list_by_subscription_request, - build_restore_request, - build_update_request, -) -from .._configuration import ConfidentialLedgerConfiguration - -T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] - - -class ManagedCCFOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.confidentialledger.aio.ConfidentialLedger`'s - :attr:`managed_ccf` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs) -> None: - input_args = list(args) - self._client: AsyncPipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: ConfidentialLedgerConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace_async - async def get(self, resource_group_name: str, app_name: str, **kwargs: Any) -> _models.ManagedCCF: - """Retrieves information about a Managed CCF resource. - - Retrieves the properties of a Managed CCF app. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :return: ManagedCCF or the result of cls(response) - :rtype: ~azure.mgmt.confidentialledger.models.ManagedCCF - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - cls: ClsType[_models.ManagedCCF] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - app_name=app_name, - subscription_id=self._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("ManagedCCF", 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, app_name: str, **kwargs: Any) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - cls: ClsType[AsyncIterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - app_name=app_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, app_name: str, **kwargs: Any) -> AsyncLROPoller[None]: - """Deletes a Managed CCF resource. - - Deletes an existing Managed CCF. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_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._config.api_version)) - 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, - app_name=app_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 - - async def _create_initial( - self, resource_group_name: str, app_name: str, managed_ccf: Union[_models.ManagedCCF, IO[bytes]], **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(managed_ccf, (IOBase, bytes)): - _content = managed_ccf - else: - _json = self._serialize.body(managed_ccf, "ManagedCCF") - - _request = build_create_request( - resource_group_name=resource_group_name, - app_name=app_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( - self, - resource_group_name: str, - app_name: str, - managed_ccf: _models.ManagedCCF, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCF]: - """Creates a Managed CCF. - - Creates a Managed CCF with the specified Managed CCF parameters. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Create Request Body. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCF - :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 ManagedCCF or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_create( - self, - resource_group_name: str, - app_name: str, - managed_ccf: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCF]: - """Creates a Managed CCF. - - Creates a Managed CCF with the specified Managed CCF parameters. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Create Request Body. Required. - :type managed_ccf: IO[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 ManagedCCF or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_create( - self, resource_group_name: str, app_name: str, managed_ccf: Union[_models.ManagedCCF, IO[bytes]], **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCF]: - """Creates a Managed CCF. - - Creates a Managed CCF with the specified Managed CCF parameters. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Create Request Body. Is either a ManagedCCF type or a IO[bytes] - type. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCF or IO[bytes] - :return: An instance of AsyncLROPoller that returns either ManagedCCF or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ManagedCCF] = 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_initial( - resource_group_name=resource_group_name, - app_name=app_name, - managed_ccf=managed_ccf, - 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("ManagedCCF", 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, lro_options={"final-state-via": "azure-async-operation"}, **kwargs), - ) - elif polling is False: - polling_method = cast(AsyncPollingMethod, AsyncNoPolling()) - else: - polling_method = polling - if cont_token: - return AsyncLROPoller[_models.ManagedCCF].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.ManagedCCF]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _update_initial( - self, resource_group_name: str, app_name: str, managed_ccf: Union[_models.ManagedCCF, IO[bytes]], **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(managed_ccf, (IOBase, bytes)): - _content = managed_ccf - else: - _json = self._serialize.body(managed_ccf, "ManagedCCF") - - _request = build_update_request( - resource_group_name=resource_group_name, - app_name=app_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, 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_update( - self, - resource_group_name: str, - app_name: str, - managed_ccf: _models.ManagedCCF, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCF]: - """Update Managed CCF properties. - - Updates properties of Managed CCF. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Request body for Updating Managed CCF App. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCF - :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 ManagedCCF or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_update( - self, - resource_group_name: str, - app_name: str, - managed_ccf: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCF]: - """Update Managed CCF properties. - - Updates properties of Managed CCF. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Request body for Updating Managed CCF App. Required. - :type managed_ccf: IO[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 ManagedCCF or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_update( - self, resource_group_name: str, app_name: str, managed_ccf: Union[_models.ManagedCCF, IO[bytes]], **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCF]: - """Update Managed CCF properties. - - Updates properties of Managed CCF. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Request body for Updating Managed CCF App. Is either a ManagedCCF type or a - IO[bytes] type. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCF or IO[bytes] - :return: An instance of AsyncLROPoller that returns either ManagedCCF or the result of - cls(response) - :rtype: ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ManagedCCF] = 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._update_initial( - resource_group_name=resource_group_name, - app_name=app_name, - managed_ccf=managed_ccf, - 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("ManagedCCF", 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.ManagedCCF].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.ManagedCCF]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, filter: Optional[str] = None, **kwargs: Any - ) -> AsyncIterable["_models.ManagedCCF"]: - """Retrieves information about all Managed CCF resources under the given subscription and resource - group. - - Retrieves the properties of all Managed CCF apps. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param filter: The filter to apply on the list operation. eg. $filter=ledgerType eq 'Public'. - Default value is None. - :type filter: str - :return: An iterator like instance of either ManagedCCF or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - cls: ClsType[_models.ManagedCCFList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 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, - filter=filter, - 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._config.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("ManagedCCFList", 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_subscription(self, filter: Optional[str] = None, **kwargs: Any) -> AsyncIterable["_models.ManagedCCF"]: - """Retrieves information about all Managed CCF resources under the given subscription. - - Retrieves the properties of all Managed CCF. - - :param filter: The filter to apply on the list operation. eg. $filter=ledgerType eq 'Public'. - Default value is None. - :type filter: str - :return: An iterator like instance of either ManagedCCF or the result of cls(response) - :rtype: - ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - cls: ClsType[_models.ManagedCCFList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 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, - filter=filter, - 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._config.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("ManagedCCFList", 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 _backup_initial( - self, - resource_group_name: str, - app_name: str, - managed_ccf: Union[_models.ManagedCCFBackup, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(managed_ccf, (IOBase, bytes)): - _content = managed_ccf - else: - _json = self._serialize.body(managed_ccf, "ManagedCCFBackup") - - _request = build_backup_request( - resource_group_name=resource_group_name, - app_name=app_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, 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_backup( - self, - resource_group_name: str, - app_name: str, - managed_ccf: _models.ManagedCCFBackup, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCFBackupResponse]: - """Performs the backup operation on a Managed CCF Resource. - - Backs up a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Backup Request Body. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCFBackup - :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 ManagedCCFBackupResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFBackupResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_backup( - self, - resource_group_name: str, - app_name: str, - managed_ccf: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCFBackupResponse]: - """Performs the backup operation on a Managed CCF Resource. - - Backs up a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Backup Request Body. Required. - :type managed_ccf: IO[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 ManagedCCFBackupResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFBackupResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_backup( - self, - resource_group_name: str, - app_name: str, - managed_ccf: Union[_models.ManagedCCFBackup, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCFBackupResponse]: - """Performs the backup operation on a Managed CCF Resource. - - Backs up a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Backup Request Body. Is either a ManagedCCFBackup type or a - IO[bytes] type. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCFBackup or IO[bytes] - :return: An instance of AsyncLROPoller that returns either ManagedCCFBackupResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFBackupResponse] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ManagedCCFBackupResponse] = 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._backup_initial( - resource_group_name=resource_group_name, - app_name=app_name, - managed_ccf=managed_ccf, - 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("ManagedCCFBackupResponse", 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.ManagedCCFBackupResponse].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.ManagedCCFBackupResponse]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - async def _restore_initial( - self, - resource_group_name: str, - app_name: str, - managed_ccf: Union[_models.ManagedCCFRestore, IO[bytes]], - **kwargs: Any - ) -> AsyncIterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(managed_ccf, (IOBase, bytes)): - _content = managed_ccf - else: - _json = self._serialize.body(managed_ccf, "ManagedCCFRestore") - - _request = build_restore_request( - resource_group_name=resource_group_name, - app_name=app_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, 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_restore( - self, - resource_group_name: str, - app_name: str, - managed_ccf: _models.ManagedCCFRestore, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCFRestoreResponse]: - """Performs the restore operation to spin up a newly restored Managed CCF Resource. - - Restores a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Restore Request Body. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCFRestore - :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 ManagedCCFRestoreResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFRestoreResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - async def begin_restore( - self, - resource_group_name: str, - app_name: str, - managed_ccf: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCFRestoreResponse]: - """Performs the restore operation to spin up a newly restored Managed CCF Resource. - - Restores a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Restore Request Body. Required. - :type managed_ccf: IO[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 ManagedCCFRestoreResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFRestoreResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace_async - async def begin_restore( - self, - resource_group_name: str, - app_name: str, - managed_ccf: Union[_models.ManagedCCFRestore, IO[bytes]], - **kwargs: Any - ) -> AsyncLROPoller[_models.ManagedCCFRestoreResponse]: - """Performs the restore operation to spin up a newly restored Managed CCF Resource. - - Restores a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Restore Request Body. Is either a ManagedCCFRestore type or a - IO[bytes] type. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCFRestore or IO[bytes] - :return: An instance of AsyncLROPoller that returns either ManagedCCFRestoreResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.AsyncLROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFRestoreResponse] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ManagedCCFRestoreResponse] = 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._restore_initial( - resource_group_name=resource_group_name, - app_name=app_name, - managed_ccf=managed_ccf, - 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("ManagedCCFRestoreResponse", 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.ManagedCCFRestoreResponse].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return AsyncLROPoller[_models.ManagedCCFRestoreResponse]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_operations.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_operations.py index 6766ac88e577..03c396dadd3e 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_operations.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/aio/operations/_operations.py @@ -7,7 +7,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, AsyncIterable, Callable, Dict, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar import urllib.parse from azure.core import AsyncPipelineClient @@ -32,7 +32,8 @@ from .._configuration import ConfidentialLedgerConfiguration T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, dict[str, Any]], Any]] +List = list class Operations: @@ -55,7 +56,7 @@ def __init__(self, *args, **kwargs) -> None: self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace - def list(self, **kwargs: Any) -> AsyncIterable["_models.ResourceProviderOperationDefinition"]: + def list(self, **kwargs: Any) -> AsyncItemPaged["_models.ResourceProviderOperationDefinition"]: """Retrieves a list of available API operations under this Resource Provider. Retrieves a list of available API operations. @@ -125,7 +126,10 @@ async def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/__init__.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/__init__.py index 1c2e4bbb0949..88019612ca97 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/__init__.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/__init__.py @@ -16,47 +16,29 @@ from ._models_py3 import ( # type: ignore AADBasedSecurityPrincipal, CertBasedSecurityPrincipal, - CertificateTags, CheckNameAvailabilityRequest, CheckNameAvailabilityResponse, ConfidentialLedger, - ConfidentialLedgerBackup, - ConfidentialLedgerBackupResponse, ConfidentialLedgerList, - ConfidentialLedgerRestore, - ConfidentialLedgerRestoreResponse, - DeploymentType, ErrorAdditionalInfo, ErrorDetail, ErrorResponse, LedgerProperties, - ManagedCCF, - ManagedCCFBackup, - ManagedCCFBackupResponse, - ManagedCCFList, - ManagedCCFProperties, - ManagedCCFRestore, - ManagedCCFRestoreResponse, - MemberIdentityCertificate, Resource, + ResourceLocation, ResourceProviderOperationDefinition, ResourceProviderOperationDisplay, ResourceProviderOperationList, SystemData, - TrackedResource, + Tags, ) from ._confidential_ledger_enums import ( # type: ignore - ApplicationType, CheckNameAvailabilityReason, CreatedByType, - EnclavePlatform, - LanguageRuntime, LedgerRoleName, - LedgerSku, LedgerType, ProvisioningState, - RunningState, ) from ._patch import __all__ as _patch_all from ._patch import * @@ -65,44 +47,26 @@ __all__ = [ "AADBasedSecurityPrincipal", "CertBasedSecurityPrincipal", - "CertificateTags", "CheckNameAvailabilityRequest", "CheckNameAvailabilityResponse", "ConfidentialLedger", - "ConfidentialLedgerBackup", - "ConfidentialLedgerBackupResponse", "ConfidentialLedgerList", - "ConfidentialLedgerRestore", - "ConfidentialLedgerRestoreResponse", - "DeploymentType", "ErrorAdditionalInfo", "ErrorDetail", "ErrorResponse", "LedgerProperties", - "ManagedCCF", - "ManagedCCFBackup", - "ManagedCCFBackupResponse", - "ManagedCCFList", - "ManagedCCFProperties", - "ManagedCCFRestore", - "ManagedCCFRestoreResponse", - "MemberIdentityCertificate", "Resource", + "ResourceLocation", "ResourceProviderOperationDefinition", "ResourceProviderOperationDisplay", "ResourceProviderOperationList", "SystemData", - "TrackedResource", - "ApplicationType", + "Tags", "CheckNameAvailabilityReason", "CreatedByType", - "EnclavePlatform", - "LanguageRuntime", "LedgerRoleName", - "LedgerSku", "LedgerType", "ProvisioningState", - "RunningState", ] __all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore _patch_sdk() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/_confidential_ledger_enums.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/_confidential_ledger_enums.py index 582e49ca9cf7..5687eae1017e 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/_confidential_ledger_enums.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/_confidential_ledger_enums.py @@ -10,15 +10,6 @@ from azure.core import CaseInsensitiveEnumMeta -class ApplicationType(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Object representing the application type of the Confidential Ledger. Defaults to - ConfidentialLedger. - """ - - CONFIDENTIAL_LEDGER = "ConfidentialLedger" - CODE_TRANSPARENCY = "CodeTransparency" - - class CheckNameAvailabilityReason(str, Enum, metaclass=CaseInsensitiveEnumMeta): """The reason why the given name is not available.""" @@ -35,22 +26,6 @@ class CreatedByType(str, Enum, metaclass=CaseInsensitiveEnumMeta): KEY = "Key" -class EnclavePlatform(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Object representing the enclave platform for the Confidential Ledger application. Defaults to - IntelSgx. - """ - - INTEL_SGX = "IntelSgx" - AMD_SEV_SNP = "AmdSevSnp" - - -class LanguageRuntime(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Object representing LanguageRuntime for Manged CCF.""" - - CPP = "CPP" - JS = "JS" - - class LedgerRoleName(str, Enum, metaclass=CaseInsensitiveEnumMeta): """LedgerRole associated with the Security Principal of Ledger.""" @@ -59,14 +34,6 @@ class LedgerRoleName(str, Enum, metaclass=CaseInsensitiveEnumMeta): ADMINISTRATOR = "Administrator" -class LedgerSku(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """SKU associated with the ledger resource.""" - - STANDARD = "Standard" - BASIC = "Basic" - UNKNOWN = "Unknown" - - class LedgerType(str, Enum, metaclass=CaseInsensitiveEnumMeta): """Type of the ledger. Private means transaction data is encrypted.""" @@ -85,13 +52,3 @@ class ProvisioningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): CREATING = "Creating" DELETING = "Deleting" UPDATING = "Updating" - - -class RunningState(str, Enum, metaclass=CaseInsensitiveEnumMeta): - """Object representing RunningState for Confidential Ledger.""" - - ACTIVE = "Active" - PAUSED = "Paused" - UNKNOWN = "Unknown" - PAUSING = "Pausing" - RESUMING = "Resuming" diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/_models_py3.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/_models_py3.py index adb14cc8ba78..3db74190807a 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/_models_py3.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/models/_models_py3.py @@ -1,4 +1,3 @@ -# pylint: disable=line-too-long,useless-suppression,too-many-lines # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. @@ -7,13 +6,15 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- +from collections.abc import MutableMapping import datetime -from typing import Any, Dict, List, Optional, TYPE_CHECKING, Union +from typing import Any, Optional, TYPE_CHECKING, Union from .._utils import serialization as _serialization if TYPE_CHECKING: from .. import models as _models +JSON = MutableMapping[str, Any] class AADBasedSecurityPrincipal(_serialization.Model): @@ -91,26 +92,6 @@ def __init__( self.ledger_role_name = ledger_role_name -class CertificateTags(_serialization.Model): - """Tags for Managed CCF Certificates. - - :ivar tags: Additional tags for Managed CCF Certificates. - :vartype tags: dict[str, str] - """ - - _attribute_map = { - "tags": {"key": "tags", "type": "{str}"}, - } - - def __init__(self, *, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword tags: Additional tags for Managed CCF Certificates. - :paramtype tags: dict[str, str] - """ - super().__init__(**kwargs) - self.tags = tags - - class CheckNameAvailabilityRequest(_serialization.Model): """The check availability request body. @@ -178,219 +159,146 @@ def __init__( self.message = message -class Resource(_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. +class Tags(_serialization.Model): + """Tags for Confidential Ledger Resource. - :ivar id: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.confidentialledger.models.SystemData + :ivar tags: Additional tags for Confidential Ledger. + :vartype tags: dict[str, str] """ - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, + _attribute_map = { + "tags": {"key": "tags", "type": "{str}"}, } + def __init__(self, *, tags: Optional[dict[str, str]] = None, **kwargs: Any) -> None: + """ + :keyword tags: Additional tags for Confidential Ledger. + :paramtype tags: dict[str, str] + """ + super().__init__(**kwargs) + self.tags = tags + + +class ResourceLocation(_serialization.Model): + """Location of the ARM Resource. + + :ivar location: The Azure location where the Confidential Ledger is running. + :vartype location: str + """ + _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, + "location": {"key": "location", "type": "str"}, } - def __init__(self, **kwargs: Any) -> None: - """ """ + def __init__(self, *, location: Optional[str] = None, **kwargs: Any) -> None: + """ + :keyword location: The Azure location where the Confidential Ledger is running. + :paramtype location: str + """ super().__init__(**kwargs) - self.id: Optional[str] = None - self.name: Optional[str] = None - self.type: Optional[str] = None - self.system_data: Optional["_models.SystemData"] = None + self.location = location -class TrackedResource(Resource): - """The resource model definition for an Azure Resource Manager tracked top level resource which - has 'tags' and a 'location'. +class Resource(_serialization.Model): + """An Azure 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: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. + :ivar name: Name of the Resource. :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar type: The type of the resource. :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. + :ivar system_data: Metadata pertaining to creation and last modification of the resource. :vartype system_data: ~azure.mgmt.confidentialledger.models.SystemData - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar location: The geo-location where the resource lives. Required. - :vartype location: str """ _validation = { - "id": {"readonly": True}, "name": {"readonly": True}, + "id": {"readonly": True}, "type": {"readonly": True}, "system_data": {"readonly": True}, - "location": {"required": True}, } _attribute_map = { - "id": {"key": "id", "type": "str"}, "name": {"key": "name", "type": "str"}, + "id": {"key": "id", "type": "str"}, "type": {"key": "type", "type": "str"}, "system_data": {"key": "systemData", "type": "SystemData"}, - "tags": {"key": "tags", "type": "{str}"}, - "location": {"key": "location", "type": "str"}, } - def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs: Any) -> None: - """ - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword location: The geo-location where the resource lives. Required. - :paramtype location: str - """ + def __init__(self, **kwargs: Any) -> None: + """ """ super().__init__(**kwargs) - self.tags = tags - self.location = location + self.name: Optional[str] = None + self.id: Optional[str] = None + self.type: Optional[str] = None + self.system_data: Optional["_models.SystemData"] = None -class ConfidentialLedger(TrackedResource): +class ConfidentialLedger(Resource, ResourceLocation, Tags): """Confidential Ledger. Contains the properties of Confidential Ledger 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: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. + :ivar tags: Additional tags for Confidential Ledger. + :vartype tags: dict[str, str] + :ivar location: The Azure location where the Confidential Ledger is running. + :vartype location: str + :ivar name: Name of the Resource. :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". + :ivar id: Fully qualified resource Id for the resource. + :vartype id: str + :ivar type: The type of the resource. :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. + :ivar system_data: Metadata pertaining to creation and last modification of the resource. :vartype system_data: ~azure.mgmt.confidentialledger.models.SystemData - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar location: The geo-location where the resource lives. Required. - :vartype location: str :ivar properties: Properties of Confidential Ledger Resource. :vartype properties: ~azure.mgmt.confidentialledger.models.LedgerProperties """ _validation = { - "id": {"readonly": True}, "name": {"readonly": True}, + "id": {"readonly": True}, "type": {"readonly": True}, "system_data": {"readonly": True}, - "location": {"required": True}, } _attribute_map = { - "id": {"key": "id", "type": "str"}, + "tags": {"key": "tags", "type": "{str}"}, + "location": {"key": "location", "type": "str"}, "name": {"key": "name", "type": "str"}, + "id": {"key": "id", "type": "str"}, "type": {"key": "type", "type": "str"}, "system_data": {"key": "systemData", "type": "SystemData"}, - "tags": {"key": "tags", "type": "{str}"}, - "location": {"key": "location", "type": "str"}, "properties": {"key": "properties", "type": "LedgerProperties"}, } def __init__( self, *, - location: str, - tags: Optional[Dict[str, str]] = None, + tags: Optional[dict[str, str]] = None, + location: Optional[str] = None, properties: Optional["_models.LedgerProperties"] = None, **kwargs: Any ) -> None: """ - :keyword tags: Resource tags. + :keyword tags: Additional tags for Confidential Ledger. :paramtype tags: dict[str, str] - :keyword location: The geo-location where the resource lives. Required. + :keyword location: The Azure location where the Confidential Ledger is running. :paramtype location: str :keyword properties: Properties of Confidential Ledger Resource. :paramtype properties: ~azure.mgmt.confidentialledger.models.LedgerProperties """ - super().__init__(tags=tags, location=location, **kwargs) + super().__init__(location=location, tags=tags, **kwargs) + self.tags = tags + self.location = location self.properties = properties - - -class ConfidentialLedgerBackup(_serialization.Model): - """Object representing Backup properties of a Confidential Ledger Resource. - - All required parameters must be populated in order to send to server. - - :ivar restore_region: The region where the backup of the ledger will eventually be restored to. - :vartype restore_region: str - :ivar uri: SAS URI used to access the backup Fileshare. Required. - :vartype uri: str - """ - - _validation = { - "uri": {"required": True}, - } - - _attribute_map = { - "restore_region": {"key": "restoreRegion", "type": "str"}, - "uri": {"key": "uri", "type": "str"}, - } - - def __init__(self, *, uri: str, restore_region: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword restore_region: The region where the backup of the ledger will eventually be restored - to. - :paramtype restore_region: str - :keyword uri: SAS URI used to access the backup Fileshare. Required. - :paramtype uri: str - """ - super().__init__(**kwargs) - self.restore_region = restore_region - self.uri = uri - - -class ConfidentialLedgerBackupResponse(_serialization.Model): - """Object representing the backup response of a Confidential Ledger Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar message: Response body stating if the ledger is being backed up. - :vartype message: str - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "message": {"key": "message", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.message: Optional[str] = None + self.name: Optional[str] = None + self.id: Optional[str] = None + self.type: Optional[str] = None + self.system_data: Optional["_models.SystemData"] = None class ConfidentialLedgerList(_serialization.Model): @@ -410,7 +318,7 @@ class ConfidentialLedgerList(_serialization.Model): def __init__( self, *, - value: Optional[List["_models.ConfidentialLedger"]] = None, + value: Optional[list["_models.ConfidentialLedger"]] = None, next_link: Optional[str] = None, **kwargs: Any ) -> None: @@ -426,101 +334,6 @@ def __init__( self.next_link = next_link -class ConfidentialLedgerRestore(_serialization.Model): - """Object representing Restore properties of a Confidential Ledger Resource. - - All required parameters must be populated in order to send to server. - - :ivar file_share_name: Fileshare where the ledger backup is stored. Required. - :vartype file_share_name: str - :ivar restore_region: The region the ledger is being restored to. Required. - :vartype restore_region: str - :ivar uri: SAS URI used to access the backup fileshare. Required. - :vartype uri: str - """ - - _validation = { - "file_share_name": {"required": True}, - "restore_region": {"required": True}, - "uri": {"required": True}, - } - - _attribute_map = { - "file_share_name": {"key": "fileShareName", "type": "str"}, - "restore_region": {"key": "restoreRegion", "type": "str"}, - "uri": {"key": "uri", "type": "str"}, - } - - def __init__(self, *, file_share_name: str, restore_region: str, uri: str, **kwargs: Any) -> None: - """ - :keyword file_share_name: Fileshare where the ledger backup is stored. Required. - :paramtype file_share_name: str - :keyword restore_region: The region the ledger is being restored to. Required. - :paramtype restore_region: str - :keyword uri: SAS URI used to access the backup fileshare. Required. - :paramtype uri: str - """ - super().__init__(**kwargs) - self.file_share_name = file_share_name - self.restore_region = restore_region - self.uri = uri - - -class ConfidentialLedgerRestoreResponse(_serialization.Model): - """Object representing the restore response of a Confidential Ledger Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar message: Response body stating if the ledger is being restored. - :vartype message: str - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "message": {"key": "message", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.message: Optional[str] = None - - -class DeploymentType(_serialization.Model): - """Object representing DeploymentType for Managed CCF. - - :ivar language_runtime: Unique name for the Managed CCF. Known values are: "CPP" and "JS". - :vartype language_runtime: str or ~azure.mgmt.confidentialledger.models.LanguageRuntime - :ivar app_source_uri: Source Uri containing ManagedCCF code. - :vartype app_source_uri: str - """ - - _attribute_map = { - "language_runtime": {"key": "languageRuntime", "type": "str"}, - "app_source_uri": {"key": "appSourceUri", "type": "str"}, - } - - def __init__( - self, - *, - language_runtime: Optional[Union[str, "_models.LanguageRuntime"]] = None, - app_source_uri: Optional[str] = None, - **kwargs: Any - ) -> None: - """ - :keyword language_runtime: Unique name for the Managed CCF. Known values are: "CPP" and "JS". - :paramtype language_runtime: str or ~azure.mgmt.confidentialledger.models.LanguageRuntime - :keyword app_source_uri: Source Uri containing ManagedCCF code. - :paramtype app_source_uri: str - """ - super().__init__(**kwargs) - self.language_runtime = language_runtime - self.app_source_uri = app_source_uri - - class ErrorAdditionalInfo(_serialization.Model): """The resource management error additional info. @@ -588,8 +401,8 @@ def __init__(self, **kwargs: Any) -> None: self.code: Optional[str] = None self.message: Optional[str] = None self.target: Optional[str] = None - self.details: Optional[List["_models.ErrorDetail"]] = None - self.additional_info: Optional[List["_models.ErrorAdditionalInfo"]] = None + self.details: Optional[list["_models.ErrorDetail"]] = None + self.additional_info: Optional[list["_models.ErrorAdditionalInfo"]] = None class ErrorResponse(_serialization.Model): @@ -626,46 +439,18 @@ class LedgerProperties(_serialization.Model): :vartype identity_service_uri: str :ivar ledger_internal_namespace: Internal namespace for the Ledger. :vartype ledger_internal_namespace: str - :ivar running_state: Object representing RunningState for Ledger. Known values are: "Active", - "Paused", "Unknown", "Pausing", and "Resuming". - :vartype running_state: str or ~azure.mgmt.confidentialledger.models.RunningState :ivar ledger_type: Type of Confidential Ledger. Known values are: "Unknown", "Public", and "Private". :vartype ledger_type: str or ~azure.mgmt.confidentialledger.models.LedgerType :ivar provisioning_state: Provisioning state of Ledger Resource. Known values are: "Unknown", "Succeeded", "Failed", "Canceled", "Creating", "Deleting", and "Updating". :vartype provisioning_state: str or ~azure.mgmt.confidentialledger.models.ProvisioningState - :ivar ledger_sku: SKU associated with the ledger. Known values are: "Standard", "Basic", and - "Unknown". - :vartype ledger_sku: str or ~azure.mgmt.confidentialledger.models.LedgerSku :ivar aad_based_security_principals: Array of all AAD based Security Principals. :vartype aad_based_security_principals: list[~azure.mgmt.confidentialledger.models.AADBasedSecurityPrincipal] :ivar cert_based_security_principals: Array of all cert based Security Principals. :vartype cert_based_security_principals: list[~azure.mgmt.confidentialledger.models.CertBasedSecurityPrincipal] - :ivar host_level: CCF Property for the logging level for the untrusted host: Trace, Debug, - Info, Fail, Fatal. - :vartype host_level: str - :ivar max_body_size_in_mb: CCF Property for the maximum size of the http request body: 1MB, - 5MB, 10MB. - :vartype max_body_size_in_mb: int - :ivar subject_name: CCF Property for the subject name to include in the node certificate. - Default: CN=CCF Node. - :vartype subject_name: str - :ivar node_count: Number of CCF nodes in the ACC Ledger. - :vartype node_count: int - :ivar write_lb_address_prefix: Prefix for the write load balancer. Example: write. - :vartype write_lb_address_prefix: str - :ivar worker_threads: Number of additional threads processing incoming client requests in the - enclave (modify with care!). - :vartype worker_threads: int - :ivar enclave_platform: Enclave platform of the Confidential Ledger. Known values are: - "IntelSgx" and "AmdSevSnp". - :vartype enclave_platform: str or ~azure.mgmt.confidentialledger.models.EnclavePlatform - :ivar application_type: Application type of the Confidential Ledger. Known values are: - "ConfidentialLedger" and "CodeTransparency". - :vartype application_type: str or ~azure.mgmt.confidentialledger.models.ApplicationType """ _validation = { @@ -681,438 +466,43 @@ class LedgerProperties(_serialization.Model): "ledger_uri": {"key": "ledgerUri", "type": "str"}, "identity_service_uri": {"key": "identityServiceUri", "type": "str"}, "ledger_internal_namespace": {"key": "ledgerInternalNamespace", "type": "str"}, - "running_state": {"key": "runningState", "type": "str"}, "ledger_type": {"key": "ledgerType", "type": "str"}, "provisioning_state": {"key": "provisioningState", "type": "str"}, - "ledger_sku": {"key": "ledgerSku", "type": "str"}, "aad_based_security_principals": {"key": "aadBasedSecurityPrincipals", "type": "[AADBasedSecurityPrincipal]"}, "cert_based_security_principals": { "key": "certBasedSecurityPrincipals", "type": "[CertBasedSecurityPrincipal]", }, - "host_level": {"key": "hostLevel", "type": "str"}, - "max_body_size_in_mb": {"key": "maxBodySizeInMb", "type": "int"}, - "subject_name": {"key": "subjectName", "type": "str"}, - "node_count": {"key": "nodeCount", "type": "int"}, - "write_lb_address_prefix": {"key": "writeLBAddressPrefix", "type": "str"}, - "worker_threads": {"key": "workerThreads", "type": "int"}, - "enclave_platform": {"key": "enclavePlatform", "type": "str"}, - "application_type": {"key": "applicationType", "type": "str"}, } def __init__( self, *, - running_state: Optional[Union[str, "_models.RunningState"]] = None, ledger_type: Optional[Union[str, "_models.LedgerType"]] = None, - ledger_sku: Optional[Union[str, "_models.LedgerSku"]] = None, - aad_based_security_principals: Optional[List["_models.AADBasedSecurityPrincipal"]] = None, - cert_based_security_principals: Optional[List["_models.CertBasedSecurityPrincipal"]] = None, - host_level: Optional[str] = None, - max_body_size_in_mb: Optional[int] = None, - subject_name: Optional[str] = None, - node_count: Optional[int] = None, - write_lb_address_prefix: Optional[str] = None, - worker_threads: Optional[int] = None, - enclave_platform: Optional[Union[str, "_models.EnclavePlatform"]] = None, - application_type: Optional[Union[str, "_models.ApplicationType"]] = None, + aad_based_security_principals: Optional[list["_models.AADBasedSecurityPrincipal"]] = None, + cert_based_security_principals: Optional[list["_models.CertBasedSecurityPrincipal"]] = None, **kwargs: Any ) -> None: """ - :keyword running_state: Object representing RunningState for Ledger. Known values are: - "Active", "Paused", "Unknown", "Pausing", and "Resuming". - :paramtype running_state: str or ~azure.mgmt.confidentialledger.models.RunningState :keyword ledger_type: Type of Confidential Ledger. Known values are: "Unknown", "Public", and "Private". :paramtype ledger_type: str or ~azure.mgmt.confidentialledger.models.LedgerType - :keyword ledger_sku: SKU associated with the ledger. Known values are: "Standard", "Basic", and - "Unknown". - :paramtype ledger_sku: str or ~azure.mgmt.confidentialledger.models.LedgerSku :keyword aad_based_security_principals: Array of all AAD based Security Principals. :paramtype aad_based_security_principals: list[~azure.mgmt.confidentialledger.models.AADBasedSecurityPrincipal] :keyword cert_based_security_principals: Array of all cert based Security Principals. :paramtype cert_based_security_principals: list[~azure.mgmt.confidentialledger.models.CertBasedSecurityPrincipal] - :keyword host_level: CCF Property for the logging level for the untrusted host: Trace, Debug, - Info, Fail, Fatal. - :paramtype host_level: str - :keyword max_body_size_in_mb: CCF Property for the maximum size of the http request body: 1MB, - 5MB, 10MB. - :paramtype max_body_size_in_mb: int - :keyword subject_name: CCF Property for the subject name to include in the node certificate. - Default: CN=CCF Node. - :paramtype subject_name: str - :keyword node_count: Number of CCF nodes in the ACC Ledger. - :paramtype node_count: int - :keyword write_lb_address_prefix: Prefix for the write load balancer. Example: write. - :paramtype write_lb_address_prefix: str - :keyword worker_threads: Number of additional threads processing incoming client requests in - the enclave (modify with care!). - :paramtype worker_threads: int - :keyword enclave_platform: Enclave platform of the Confidential Ledger. Known values are: - "IntelSgx" and "AmdSevSnp". - :paramtype enclave_platform: str or ~azure.mgmt.confidentialledger.models.EnclavePlatform - :keyword application_type: Application type of the Confidential Ledger. Known values are: - "ConfidentialLedger" and "CodeTransparency". - :paramtype application_type: str or ~azure.mgmt.confidentialledger.models.ApplicationType """ super().__init__(**kwargs) self.ledger_name: Optional[str] = None self.ledger_uri: Optional[str] = None self.identity_service_uri: Optional[str] = None self.ledger_internal_namespace: Optional[str] = None - self.running_state = running_state self.ledger_type = ledger_type self.provisioning_state: Optional[Union[str, "_models.ProvisioningState"]] = None - self.ledger_sku = ledger_sku self.aad_based_security_principals = aad_based_security_principals self.cert_based_security_principals = cert_based_security_principals - self.host_level = host_level - self.max_body_size_in_mb = max_body_size_in_mb - self.subject_name = subject_name - self.node_count = node_count - self.write_lb_address_prefix = write_lb_address_prefix - self.worker_threads = worker_threads - self.enclave_platform = enclave_platform - self.application_type = application_type - - -class ManagedCCF(TrackedResource): - """Managed CCF. Contains the properties of Managed CCF 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: Fully qualified resource ID for the resource. Ex - - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. - :vartype id: str - :ivar name: The name of the resource. - :vartype name: str - :ivar type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or - "Microsoft.Storage/storageAccounts". - :vartype type: str - :ivar system_data: Azure Resource Manager metadata containing createdBy and modifiedBy - information. - :vartype system_data: ~azure.mgmt.confidentialledger.models.SystemData - :ivar tags: Resource tags. - :vartype tags: dict[str, str] - :ivar location: The geo-location where the resource lives. Required. - :vartype location: str - :ivar properties: Properties of Managed CCF Resource. - :vartype properties: ~azure.mgmt.confidentialledger.models.ManagedCCFProperties - """ - - _validation = { - "id": {"readonly": True}, - "name": {"readonly": True}, - "type": {"readonly": True}, - "system_data": {"readonly": True}, - "location": {"required": True}, - } - - _attribute_map = { - "id": {"key": "id", "type": "str"}, - "name": {"key": "name", "type": "str"}, - "type": {"key": "type", "type": "str"}, - "system_data": {"key": "systemData", "type": "SystemData"}, - "tags": {"key": "tags", "type": "{str}"}, - "location": {"key": "location", "type": "str"}, - "properties": {"key": "properties", "type": "ManagedCCFProperties"}, - } - - def __init__( - self, - *, - location: str, - tags: Optional[Dict[str, str]] = None, - properties: Optional["_models.ManagedCCFProperties"] = None, - **kwargs: Any - ) -> None: - """ - :keyword tags: Resource tags. - :paramtype tags: dict[str, str] - :keyword location: The geo-location where the resource lives. Required. - :paramtype location: str - :keyword properties: Properties of Managed CCF Resource. - :paramtype properties: ~azure.mgmt.confidentialledger.models.ManagedCCFProperties - """ - super().__init__(tags=tags, location=location, **kwargs) - self.properties = properties - - -class ManagedCCFBackup(_serialization.Model): - """Object representing Backup properties of a Managed CCF Resource. - - All required parameters must be populated in order to send to server. - - :ivar restore_region: The region where the backup of the managed CCF resource will eventually - be restored to. - :vartype restore_region: str - :ivar uri: SAS URI used to access the backup Fileshare. Required. - :vartype uri: str - """ - - _validation = { - "uri": {"required": True}, - } - - _attribute_map = { - "restore_region": {"key": "restoreRegion", "type": "str"}, - "uri": {"key": "uri", "type": "str"}, - } - - def __init__(self, *, uri: str, restore_region: Optional[str] = None, **kwargs: Any) -> None: - """ - :keyword restore_region: The region where the backup of the managed CCF resource will - eventually be restored to. - :paramtype restore_region: str - :keyword uri: SAS URI used to access the backup Fileshare. Required. - :paramtype uri: str - """ - super().__init__(**kwargs) - self.restore_region = restore_region - self.uri = uri - - -class ManagedCCFBackupResponse(_serialization.Model): - """Object representing the backup response of a Managed CCF Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar message: Response body stating if the managed CCF resource is being backed up. - :vartype message: str - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "message": {"key": "message", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.message: Optional[str] = None - - -class ManagedCCFList(_serialization.Model): - """Object that includes an array of Managed CCF and a possible link for next set. - - :ivar value: List of Managed CCF. - :vartype value: list[~azure.mgmt.confidentialledger.models.ManagedCCF] - :ivar next_link: The URL the client should use to fetch the next page (per server side paging). - :vartype next_link: str - """ - - _attribute_map = { - "value": {"key": "value", "type": "[ManagedCCF]"}, - "next_link": {"key": "nextLink", "type": "str"}, - } - - def __init__( - self, *, value: Optional[List["_models.ManagedCCF"]] = None, next_link: Optional[str] = None, **kwargs: Any - ) -> None: - """ - :keyword value: List of Managed CCF. - :paramtype value: list[~azure.mgmt.confidentialledger.models.ManagedCCF] - :keyword next_link: The URL the client should use to fetch the next page (per server side - paging). - :paramtype next_link: str - """ - super().__init__(**kwargs) - self.value = value - self.next_link = next_link - - -class ManagedCCFProperties(_serialization.Model): - """Additional Managed CCF properties. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar app_name: Unique name for the Managed CCF. - :vartype app_name: str - :ivar app_uri: Endpoint for calling Managed CCF Service. - :vartype app_uri: str - :ivar identity_service_uri: Endpoint for accessing network identity. - :vartype identity_service_uri: str - :ivar member_identity_certificates: List of member identity certificates for Managed CCF. - :vartype member_identity_certificates: - list[~azure.mgmt.confidentialledger.models.MemberIdentityCertificate] - :ivar deployment_type: Deployment Type of Managed CCF. - :vartype deployment_type: ~azure.mgmt.confidentialledger.models.DeploymentType - :ivar running_state: Object representing RunningState for Managed CCF. Known values are: - "Active", "Paused", "Unknown", "Pausing", and "Resuming". - :vartype running_state: str or ~azure.mgmt.confidentialledger.models.RunningState - :ivar provisioning_state: Provisioning state of Managed CCF Resource. Known values are: - "Unknown", "Succeeded", "Failed", "Canceled", "Creating", "Deleting", and "Updating". - :vartype provisioning_state: str or ~azure.mgmt.confidentialledger.models.ProvisioningState - :ivar node_count: Number of CCF nodes in the Managed CCF. - :vartype node_count: int - :ivar enclave_platform: Enclave platform of Managed CCF. Known values are: "IntelSgx" and - "AmdSevSnp". - :vartype enclave_platform: str or ~azure.mgmt.confidentialledger.models.EnclavePlatform - """ - - _validation = { - "app_name": {"readonly": True}, - "app_uri": {"readonly": True}, - "identity_service_uri": {"readonly": True}, - "provisioning_state": {"readonly": True}, - } - - _attribute_map = { - "app_name": {"key": "appName", "type": "str"}, - "app_uri": {"key": "appUri", "type": "str"}, - "identity_service_uri": {"key": "identityServiceUri", "type": "str"}, - "member_identity_certificates": {"key": "memberIdentityCertificates", "type": "[MemberIdentityCertificate]"}, - "deployment_type": {"key": "deploymentType", "type": "DeploymentType"}, - "running_state": {"key": "runningState", "type": "str"}, - "provisioning_state": {"key": "provisioningState", "type": "str"}, - "node_count": {"key": "nodeCount", "type": "int"}, - "enclave_platform": {"key": "enclavePlatform", "type": "str"}, - } - - def __init__( - self, - *, - member_identity_certificates: Optional[List["_models.MemberIdentityCertificate"]] = None, - deployment_type: Optional["_models.DeploymentType"] = None, - running_state: Optional[Union[str, "_models.RunningState"]] = None, - node_count: int = 3, - enclave_platform: Optional[Union[str, "_models.EnclavePlatform"]] = None, - **kwargs: Any - ) -> None: - """ - :keyword member_identity_certificates: List of member identity certificates for Managed CCF. - :paramtype member_identity_certificates: - list[~azure.mgmt.confidentialledger.models.MemberIdentityCertificate] - :keyword deployment_type: Deployment Type of Managed CCF. - :paramtype deployment_type: ~azure.mgmt.confidentialledger.models.DeploymentType - :keyword running_state: Object representing RunningState for Managed CCF. Known values are: - "Active", "Paused", "Unknown", "Pausing", and "Resuming". - :paramtype running_state: str or ~azure.mgmt.confidentialledger.models.RunningState - :keyword node_count: Number of CCF nodes in the Managed CCF. - :paramtype node_count: int - :keyword enclave_platform: Enclave platform of Managed CCF. Known values are: "IntelSgx" and - "AmdSevSnp". - :paramtype enclave_platform: str or ~azure.mgmt.confidentialledger.models.EnclavePlatform - """ - super().__init__(**kwargs) - self.app_name: Optional[str] = None - self.app_uri: Optional[str] = None - self.identity_service_uri: Optional[str] = None - self.member_identity_certificates = member_identity_certificates - self.deployment_type = deployment_type - self.running_state = running_state - self.provisioning_state: Optional[Union[str, "_models.ProvisioningState"]] = None - self.node_count = node_count - self.enclave_platform = enclave_platform - - -class ManagedCCFRestore(_serialization.Model): - """Object representing Restore properties of Managed CCF Resource. - - All required parameters must be populated in order to send to server. - - :ivar file_share_name: Fileshare where the managed CCF resource backup is stored. Required. - :vartype file_share_name: str - :ivar restore_region: The region the managed CCF resource is being restored to. Required. - :vartype restore_region: str - :ivar uri: SAS URI used to access the backup Fileshare. Required. - :vartype uri: str - """ - - _validation = { - "file_share_name": {"required": True}, - "restore_region": {"required": True}, - "uri": {"required": True}, - } - - _attribute_map = { - "file_share_name": {"key": "fileShareName", "type": "str"}, - "restore_region": {"key": "restoreRegion", "type": "str"}, - "uri": {"key": "uri", "type": "str"}, - } - - def __init__(self, *, file_share_name: str, restore_region: str, uri: str, **kwargs: Any) -> None: - """ - :keyword file_share_name: Fileshare where the managed CCF resource backup is stored. Required. - :paramtype file_share_name: str - :keyword restore_region: The region the managed CCF resource is being restored to. Required. - :paramtype restore_region: str - :keyword uri: SAS URI used to access the backup Fileshare. Required. - :paramtype uri: str - """ - super().__init__(**kwargs) - self.file_share_name = file_share_name - self.restore_region = restore_region - self.uri = uri - - -class ManagedCCFRestoreResponse(_serialization.Model): - """Object representing the restore response of a Managed CCF Resource. - - Variables are only populated by the server, and will be ignored when sending a request. - - :ivar message: Response body stating if the managed CCF resource is being restored. - :vartype message: str - """ - - _validation = { - "message": {"readonly": True}, - } - - _attribute_map = { - "message": {"key": "message", "type": "str"}, - } - - def __init__(self, **kwargs: Any) -> None: - """ """ - super().__init__(**kwargs) - self.message: Optional[str] = None - - -class MemberIdentityCertificate(_serialization.Model): - """Object representing MemberIdentityCertificate for Managed CCF. - - :ivar certificate: Member Identity Certificate. - :vartype certificate: str - :ivar encryptionkey: Member Identity Certificate Encryption Key. - :vartype encryptionkey: str - :ivar tags: Anything. - :vartype tags: any - """ - - _attribute_map = { - "certificate": {"key": "certificate", "type": "str"}, - "encryptionkey": {"key": "encryptionkey", "type": "str"}, - "tags": {"key": "tags", "type": "object"}, - } - - def __init__( - self, - *, - certificate: Optional[str] = None, - encryptionkey: Optional[str] = None, - tags: Optional[Any] = None, - **kwargs: Any - ) -> None: - """ - :keyword certificate: Member Identity Certificate. - :paramtype certificate: str - :keyword encryptionkey: Member Identity Certificate Encryption Key. - :paramtype encryptionkey: str - :keyword tags: Anything. - :paramtype tags: any - """ - super().__init__(**kwargs) - self.certificate = certificate - self.encryptionkey = encryptionkey - self.tags = tags class ResourceProviderOperationDefinition(_serialization.Model): @@ -1225,7 +615,7 @@ class ResourceProviderOperationList(_serialization.Model): def __init__(self, **kwargs: Any) -> None: """ """ super().__init__(**kwargs) - self.value: Optional[List["_models.ResourceProviderOperationDefinition"]] = None + self.value: Optional[list["_models.ResourceProviderOperationDefinition"]] = None self.next_link: Optional[str] = None diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/__init__.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/__init__.py index fd122374c751..ff8528275c9f 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/__init__.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/__init__.py @@ -1,3 +1,4 @@ +# pylint: disable=line-too-long,useless-suppression # coding=utf-8 # -------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,9 +14,8 @@ from ._patch import * # pylint: disable=unused-wildcard-import from ._operations import Operations # type: ignore -from ._confidential_ledger_operations import ConfidentialLedgerOperationsMixin # type: ignore +from ._confidential_ledger_operations import _ConfidentialLedgerOperationsMixin # type: ignore # pylint: disable=unused-import from ._ledger_operations import LedgerOperations # type: ignore -from ._managed_ccf_operations import ManagedCCFOperations # type: ignore from ._patch import __all__ as _patch_all from ._patch import * @@ -23,9 +23,7 @@ __all__ = [ "Operations", - "ConfidentialLedgerOperationsMixin", "LedgerOperations", - "ManagedCCFOperations", ] __all__.extend([p for p in _patch_all if p not in __all__]) # pyright: ignore _patch_sdk() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_confidential_ledger_operations.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_confidential_ledger_operations.py index 7f213a7ff1bc..a22e1d0e0df7 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_confidential_ledger_operations.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_confidential_ledger_operations.py @@ -7,7 +7,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Optional, TypeVar, Union, overload +from typing import Any, Callable, IO, Optional, TypeVar, Union, overload from azure.core import PipelineClient from azure.core.exceptions import ( @@ -30,7 +30,8 @@ from .._utils.utils import ClientMixinABC T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -40,7 +41,7 @@ def build_check_name_availability_request(subscription_id: str, **kwargs: Any) - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-13")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -49,7 +50,7 @@ def build_check_name_availability_request(subscription_id: str, **kwargs: Any) - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ConfidentialLedger/checkNameAvailability" ) path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -65,7 +66,9 @@ def build_check_name_availability_request(subscription_id: str, **kwargs: Any) - return HttpRequest(method="POST", url=_url, params=_params, headers=_headers, **kwargs) -class ConfidentialLedgerOperationsMixin(ClientMixinABC[PipelineClient, ConfidentialLedgerConfiguration]): +class _ConfidentialLedgerOperationsMixin( + ClientMixinABC[PipelineClient[HttpRequest, HttpResponse], ConfidentialLedgerConfiguration] +): @overload def check_name_availability( @@ -161,7 +164,10 @@ def check_name_availability( if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("CheckNameAvailabilityResponse", pipeline_response.http_response) diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_ledger_operations.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_ledger_operations.py index 508007c36390..25855f783755 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_ledger_operations.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_ledger_operations.py @@ -8,7 +8,7 @@ # -------------------------------------------------------------------------- from collections.abc import MutableMapping from io import IOBase -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload +from typing import Any, Callable, IO, Iterator, Optional, TypeVar, Union, cast, overload import urllib.parse from azure.core import PipelineClient @@ -36,7 +36,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -46,7 +47,7 @@ def build_get_request(resource_group_name: str, ledger_name: str, subscription_i _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-13")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -55,13 +56,11 @@ def build_get_request(resource_group_name: str, ledger_name: str, subscription_i "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/ledgers/{ledgerName}", ) path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "ledgerName": _SERIALIZER.url( - "ledger_name", ledger_name, "str", pattern=r"^[^-0-9][A-Za-z0-9-]{1,33}[A-Za-z0-9]$" + "resource_group_name", resource_group_name, "str", max_length=90, min_length=3 ), + "ledgerName": _SERIALIZER.url("ledger_name", ledger_name, "str", pattern=r"^[a-zA-Z0-9]"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -81,7 +80,7 @@ def build_delete_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-13")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -90,13 +89,11 @@ def build_delete_request( "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/ledgers/{ledgerName}", ) path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "ledgerName": _SERIALIZER.url( - "ledger_name", ledger_name, "str", pattern=r"^[^-0-9][A-Za-z0-9-]{1,33}[A-Za-z0-9]$" + "resource_group_name", resource_group_name, "str", max_length=90, min_length=3 ), + "ledgerName": _SERIALIZER.url("ledger_name", ledger_name, "str", pattern=r"^[a-zA-Z0-9]"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -116,7 +113,7 @@ def build_create_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-13")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -126,13 +123,11 @@ def build_create_request( "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/ledgers/{ledgerName}", ) path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "ledgerName": _SERIALIZER.url( - "ledger_name", ledger_name, "str", pattern=r"^[^-0-9][A-Za-z0-9-]{1,33}[A-Za-z0-9]$" + "resource_group_name", resource_group_name, "str", max_length=90, min_length=3 ), + "ledgerName": _SERIALIZER.url("ledger_name", ledger_name, "str", pattern=r"^[a-zA-Z0-9]"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -154,7 +149,7 @@ def build_update_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-13")) content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) accept = _headers.pop("Accept", "application/json") @@ -164,13 +159,11 @@ def build_update_request( "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/ledgers/{ledgerName}", ) path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "ledgerName": _SERIALIZER.url( - "ledger_name", ledger_name, "str", pattern=r"^[^-0-9][A-Za-z0-9-]{1,33}[A-Za-z0-9]$" + "resource_group_name", resource_group_name, "str", max_length=90, min_length=3 ), + "ledgerName": _SERIALIZER.url("ledger_name", ledger_name, "str", pattern=r"^[a-zA-Z0-9]"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -192,7 +185,7 @@ def build_list_by_resource_group_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-13")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -201,9 +194,9 @@ def build_list_by_resource_group_request( "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/ledgers", ) path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 + "resource_group_name", resource_group_name, "str", max_length=90, min_length=3 ), } @@ -226,13 +219,13 @@ def build_list_by_subscription_request( _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-13")) accept = _headers.pop("Accept", "application/json") # Construct URL - _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ConfidentialLedger/ledgers/") + _url = kwargs.pop("template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ConfidentialLedger/ledgers") path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), + "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str"), } _url: str = _url.format(**path_format_arguments) # type: ignore @@ -248,82 +241,6 @@ def build_list_by_subscription_request( return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) -def build_backup_request( - resource_group_name: str, ledger_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-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.ConfidentialLedger/ledgers/{ledgerName}/backup", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "ledgerName": _SERIALIZER.url( - "ledger_name", ledger_name, "str", pattern=r"^[^-0-9][A-Za-z0-9-]{1,33}[A-Za-z0-9]$" - ), - } - - _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_restore_request( - resource_group_name: str, ledger_name: str, subscription_id: str, **kwargs: Any -) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-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.ConfidentialLedger/ledgers/{ledgerName}/restore", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "ledgerName": _SERIALIZER.url( - "ledger_name", ledger_name, "str", pattern=r"^[^-0-9][A-Za-z0-9-]{1,33}[A-Za-z0-9]$" - ), - } - - _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 LedgerOperations: """ .. warning:: @@ -336,7 +253,7 @@ class LedgerOperations: models = _models - def __init__(self, *args, **kwargs): + def __init__(self, *args, **kwargs) -> None: input_args = list(args) self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") self._config: ConfidentialLedgerConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") @@ -349,8 +266,7 @@ def get(self, resource_group_name: str, ledger_name: str, **kwargs: Any) -> _mod Retrieves the properties of a Confidential Ledger. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -391,7 +307,10 @@ def get(self, resource_group_name: str, ledger_name: str, **kwargs: Any) -> _mod if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) deserialized = self._deserialize("ConfidentialLedger", pipeline_response.http_response) @@ -440,13 +359,23 @@ def _delete_initial(self, resource_group_name: str, ledger_name: str, **kwargs: 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) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) + response_headers = {} + if response.status_code == 202: + response_headers["Location"] = self._deserialize("str", response.headers.get("Location")) + response_headers["Azure-AsyncOperation"] = self._deserialize( + "str", response.headers.get("Azure-AsyncOperation") + ) + deserialized = response.stream_download(self._client._pipeline, decompress=_decompress) if cls: - return cls(pipeline_response, deserialized, {}) # type: ignore + return cls(pipeline_response, deserialized, response_headers) # type: ignore return deserialized # type: ignore @@ -456,8 +385,7 @@ def begin_delete(self, resource_group_name: str, ledger_name: str, **kwargs: Any Deletes an existing Confidential Ledger. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -562,7 +490,10 @@ def _create_initial( 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) + 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) @@ -586,8 +517,7 @@ def begin_create( Creates a Confidential Ledger with the specified ledger parameters. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -616,8 +546,7 @@ def begin_create( Creates a Confidential Ledger with the specified ledger parameters. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -644,8 +573,7 @@ def begin_create( Creates a Confidential Ledger with the specified ledger parameters. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -764,7 +692,10 @@ def _update_initial( 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) + 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) @@ -788,8 +719,7 @@ def begin_update( Updates properties of Confidential Ledger. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -818,8 +748,7 @@ def begin_update( Updates properties of Confidential Ledger. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -846,8 +775,7 @@ def begin_update( Updates properties of Confidential Ledger. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param ledger_name: Name of the Confidential Ledger. Required. :type ledger_name: str @@ -910,14 +838,13 @@ def get_long_running_output(pipeline_response): @distributed_trace def list_by_resource_group( self, resource_group_name: str, filter: Optional[str] = None, **kwargs: Any - ) -> Iterable["_models.ConfidentialLedger"]: + ) -> ItemPaged["_models.ConfidentialLedger"]: """Retrieves information about all Confidential Ledger resources under the given subscription and resource group. Retrieves the properties of all Confidential Ledgers. - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. + :param resource_group_name: The name of the resource group. Required. :type resource_group_name: str :param filter: The filter to apply on the list operation. eg. $filter=ledgerType eq 'Public'. Default value is None. @@ -988,7 +915,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response @@ -998,7 +928,7 @@ def get_next(next_link=None): @distributed_trace def list_by_subscription( self, filter: Optional[str] = None, **kwargs: Any - ) -> Iterable["_models.ConfidentialLedger"]: + ) -> ItemPaged["_models.ConfidentialLedger"]: """Retrieves information about all Confidential Ledger resources under the given subscription. Retrieves the properties of all Confidential Ledgers. @@ -1071,415 +1001,12 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + 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 _backup_initial( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: Union[_models.ConfidentialLedgerBackup, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(confidential_ledger, (IOBase, bytes)): - _content = confidential_ledger - else: - _json = self._serialize.body(confidential_ledger, "ConfidentialLedgerBackup") - - _request = build_backup_request( - resource_group_name=resource_group_name, - ledger_name=ledger_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, 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_backup( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: _models.ConfidentialLedgerBackup, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ConfidentialLedgerBackupResponse]: - """Performs the backup operation on a Confidential Ledger Resource. - - Backs up a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Backup Request Body. Required. - :type confidential_ledger: ~azure.mgmt.confidentialledger.models.ConfidentialLedgerBackup - :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 ConfidentialLedgerBackupResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerBackupResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_backup( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ConfidentialLedgerBackupResponse]: - """Performs the backup operation on a Confidential Ledger Resource. - - Backs up a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Backup Request Body. Required. - :type confidential_ledger: IO[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 ConfidentialLedgerBackupResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerBackupResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_backup( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: Union[_models.ConfidentialLedgerBackup, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.ConfidentialLedgerBackupResponse]: - """Performs the backup operation on a Confidential Ledger Resource. - - Backs up a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Backup Request Body. Is either a - ConfidentialLedgerBackup type or a IO[bytes] type. Required. - :type confidential_ledger: ~azure.mgmt.confidentialledger.models.ConfidentialLedgerBackup or - IO[bytes] - :return: An instance of LROPoller that returns either ConfidentialLedgerBackupResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerBackupResponse] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ConfidentialLedgerBackupResponse] = 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._backup_initial( - resource_group_name=resource_group_name, - ledger_name=ledger_name, - confidential_ledger=confidential_ledger, - 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("ConfidentialLedgerBackupResponse", 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.ConfidentialLedgerBackupResponse].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.ConfidentialLedgerBackupResponse]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _restore_initial( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: Union[_models.ConfidentialLedgerRestore, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(confidential_ledger, (IOBase, bytes)): - _content = confidential_ledger - else: - _json = self._serialize.body(confidential_ledger, "ConfidentialLedgerRestore") - - _request = build_restore_request( - resource_group_name=resource_group_name, - ledger_name=ledger_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, 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_restore( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: _models.ConfidentialLedgerRestore, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ConfidentialLedgerRestoreResponse]: - """Performs the restore operation to spin up a newly restored Confidential Ledger Resource. - - Restores a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Restore Request Body. Required. - :type confidential_ledger: ~azure.mgmt.confidentialledger.models.ConfidentialLedgerRestore - :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 ConfidentialLedgerRestoreResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerRestoreResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_restore( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ConfidentialLedgerRestoreResponse]: - """Performs the restore operation to spin up a newly restored Confidential Ledger Resource. - - Restores a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Restore Request Body. Required. - :type confidential_ledger: IO[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 ConfidentialLedgerRestoreResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerRestoreResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_restore( - self, - resource_group_name: str, - ledger_name: str, - confidential_ledger: Union[_models.ConfidentialLedgerRestore, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.ConfidentialLedgerRestoreResponse]: - """Performs the restore operation to spin up a newly restored Confidential Ledger Resource. - - Restores a Confidential Ledger Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param ledger_name: Name of the Confidential Ledger. Required. - :type ledger_name: str - :param confidential_ledger: Confidential Ledger Restore Request Body. Is either a - ConfidentialLedgerRestore type or a IO[bytes] type. Required. - :type confidential_ledger: ~azure.mgmt.confidentialledger.models.ConfidentialLedgerRestore or - IO[bytes] - :return: An instance of LROPoller that returns either ConfidentialLedgerRestoreResponse or the - result of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ConfidentialLedgerRestoreResponse] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ConfidentialLedgerRestoreResponse] = 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._restore_initial( - resource_group_name=resource_group_name, - ledger_name=ledger_name, - confidential_ledger=confidential_ledger, - 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("ConfidentialLedgerRestoreResponse", 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.ConfidentialLedgerRestoreResponse].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.ConfidentialLedgerRestoreResponse]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_managed_ccf_operations.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_managed_ccf_operations.py deleted file mode 100644 index d86eec9cf7a3..000000000000 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_managed_ccf_operations.py +++ /dev/null @@ -1,1437 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression,too-many-lines -# 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 collections.abc import MutableMapping -from io import IOBase -from typing import Any, Callable, Dict, IO, Iterable, Iterator, Optional, TypeVar, Union, cast, overload -import urllib.parse - -from azure.core import PipelineClient -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 .._configuration import ConfidentialLedgerConfiguration -from .._utils.serialization import Deserializer, Serializer - -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, app_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/managedCCFs/{appName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "appName": _SERIALIZER.url("app_name", app_name, "str", pattern=r"^[a-zA-Z0-9]"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # 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_request(resource_group_name: str, app_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/managedCCFs/{appName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "appName": _SERIALIZER.url("app_name", app_name, "str", pattern=r"^[a-zA-Z0-9]"), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # 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_create_request(resource_group_name: str, app_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-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.ConfidentialLedger/managedCCFs/{appName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "appName": _SERIALIZER.url("app_name", app_name, "str", pattern=r"^[a-zA-Z0-9]"), - } - - _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_update_request(resource_group_name: str, app_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-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.ConfidentialLedger/managedCCFs/{appName}", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "appName": _SERIALIZER.url("app_name", app_name, "str", pattern=r"^[a-zA-Z0-9]"), - } - - _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_by_resource_group_request( - resource_group_name: str, subscription_id: str, *, filter: Optional[str] = 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", "2024-09-19-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/managedCCFs", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if filter is not None: - _params["$filter"] = _SERIALIZER.query("filter", filter, "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_subscription_request( - subscription_id: str, *, filter: Optional[str] = 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", "2024-09-19-preview")) - accept = _headers.pop("Accept", "application/json") - - # Construct URL - _url = kwargs.pop( - "template_url", "/subscriptions/{subscriptionId}/providers/Microsoft.ConfidentialLedger/managedCCFs/" - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), - } - - _url: str = _url.format(**path_format_arguments) # type: ignore - - # Construct parameters - _params["api-version"] = _SERIALIZER.query("api_version", api_version, "str") - if filter is not None: - _params["$filter"] = _SERIALIZER.query("filter", filter, "str") - - # Construct headers - _headers["Accept"] = _SERIALIZER.header("accept", accept, "str") - - return HttpRequest(method="GET", url=_url, params=_params, headers=_headers, **kwargs) - - -def build_backup_request(resource_group_name: str, app_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-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.ConfidentialLedger/managedCCFs/{appName}/backup", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "appName": _SERIALIZER.url("app_name", app_name, "str", pattern=r"^[a-zA-Z0-9]"), - } - - _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_restore_request(resource_group_name: str, app_name: str, subscription_id: str, **kwargs: Any) -> HttpRequest: - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2024-09-19-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.ConfidentialLedger/managedCCFs/{appName}/restore", - ) - path_format_arguments = { - "subscriptionId": _SERIALIZER.url("subscription_id", subscription_id, "str", min_length=1), - "resourceGroupName": _SERIALIZER.url( - "resource_group_name", resource_group_name, "str", max_length=90, min_length=1 - ), - "appName": _SERIALIZER.url("app_name", app_name, "str", pattern=r"^[a-zA-Z0-9]"), - } - - _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 ManagedCCFOperations: - """ - .. warning:: - **DO NOT** instantiate this class directly. - - Instead, you should access the following operations through - :class:`~azure.mgmt.confidentialledger.ConfidentialLedger`'s - :attr:`managed_ccf` attribute. - """ - - models = _models - - def __init__(self, *args, **kwargs): - input_args = list(args) - self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") - self._config: ConfidentialLedgerConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") - self._serialize: Serializer = input_args.pop(0) if input_args else kwargs.pop("serializer") - self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") - - @distributed_trace - def get(self, resource_group_name: str, app_name: str, **kwargs: Any) -> _models.ManagedCCF: - """Retrieves information about a Managed CCF resource. - - Retrieves the properties of a Managed CCF app. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :return: ManagedCCF or the result of cls(response) - :rtype: ~azure.mgmt.confidentialledger.models.ManagedCCF - :raises ~azure.core.exceptions.HttpResponseError: - """ - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - cls: ClsType[_models.ManagedCCF] = kwargs.pop("cls", None) - - _request = build_get_request( - resource_group_name=resource_group_name, - app_name=app_name, - subscription_id=self._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("ManagedCCF", 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, app_name: str, **kwargs: Any) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - cls: ClsType[Iterator[bytes]] = kwargs.pop("cls", None) - - _request = build_delete_request( - resource_group_name=resource_group_name, - app_name=app_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, app_name: str, **kwargs: Any) -> LROPoller[None]: - """Deletes a Managed CCF resource. - - Deletes an existing Managed CCF. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_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._config.api_version)) - 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, - app_name=app_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 - - def _create_initial( - self, resource_group_name: str, app_name: str, managed_ccf: Union[_models.ManagedCCF, IO[bytes]], **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(managed_ccf, (IOBase, bytes)): - _content = managed_ccf - else: - _json = self._serialize.body(managed_ccf, "ManagedCCF") - - _request = build_create_request( - resource_group_name=resource_group_name, - app_name=app_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( - self, - resource_group_name: str, - app_name: str, - managed_ccf: _models.ManagedCCF, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ManagedCCF]: - """Creates a Managed CCF. - - Creates a Managed CCF with the specified Managed CCF parameters. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Create Request Body. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCF - :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 ManagedCCF or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_create( - self, - resource_group_name: str, - app_name: str, - managed_ccf: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ManagedCCF]: - """Creates a Managed CCF. - - Creates a Managed CCF with the specified Managed CCF parameters. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Create Request Body. Required. - :type managed_ccf: IO[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 ManagedCCF or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_create( - self, resource_group_name: str, app_name: str, managed_ccf: Union[_models.ManagedCCF, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.ManagedCCF]: - """Creates a Managed CCF. - - Creates a Managed CCF with the specified Managed CCF parameters. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Create Request Body. Is either a ManagedCCF type or a IO[bytes] - type. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCF or IO[bytes] - :return: An instance of LROPoller that returns either ManagedCCF or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ManagedCCF] = 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_initial( - resource_group_name=resource_group_name, - app_name=app_name, - managed_ccf=managed_ccf, - 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("ManagedCCF", 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, lro_options={"final-state-via": "azure-async-operation"}, **kwargs) - ) - elif polling is False: - polling_method = cast(PollingMethod, NoPolling()) - else: - polling_method = polling - if cont_token: - return LROPoller[_models.ManagedCCF].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.ManagedCCF]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _update_initial( - self, resource_group_name: str, app_name: str, managed_ccf: Union[_models.ManagedCCF, IO[bytes]], **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(managed_ccf, (IOBase, bytes)): - _content = managed_ccf - else: - _json = self._serialize.body(managed_ccf, "ManagedCCF") - - _request = build_update_request( - resource_group_name=resource_group_name, - app_name=app_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, 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_update( - self, - resource_group_name: str, - app_name: str, - managed_ccf: _models.ManagedCCF, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ManagedCCF]: - """Update Managed CCF properties. - - Updates properties of Managed CCF. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Request body for Updating Managed CCF App. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCF - :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 ManagedCCF or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_update( - self, - resource_group_name: str, - app_name: str, - managed_ccf: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ManagedCCF]: - """Update Managed CCF properties. - - Updates properties of Managed CCF. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Request body for Updating Managed CCF App. Required. - :type managed_ccf: IO[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 ManagedCCF or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_update( - self, resource_group_name: str, app_name: str, managed_ccf: Union[_models.ManagedCCF, IO[bytes]], **kwargs: Any - ) -> LROPoller[_models.ManagedCCF]: - """Update Managed CCF properties. - - Updates properties of Managed CCF. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Request body for Updating Managed CCF App. Is either a ManagedCCF type or a - IO[bytes] type. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCF or IO[bytes] - :return: An instance of LROPoller that returns either ManagedCCF or the result of cls(response) - :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCF] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ManagedCCF] = 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._update_initial( - resource_group_name=resource_group_name, - app_name=app_name, - managed_ccf=managed_ccf, - 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("ManagedCCF", 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.ManagedCCF].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.ManagedCCF]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - @distributed_trace - def list_by_resource_group( - self, resource_group_name: str, filter: Optional[str] = None, **kwargs: Any - ) -> Iterable["_models.ManagedCCF"]: - """Retrieves information about all Managed CCF resources under the given subscription and resource - group. - - Retrieves the properties of all Managed CCF apps. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param filter: The filter to apply on the list operation. eg. $filter=ledgerType eq 'Public'. - Default value is None. - :type filter: str - :return: An iterator like instance of either ManagedCCF or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - cls: ClsType[_models.ManagedCCFList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 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, - filter=filter, - 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._config.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("ManagedCCFList", 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_subscription(self, filter: Optional[str] = None, **kwargs: Any) -> Iterable["_models.ManagedCCF"]: - """Retrieves information about all Managed CCF resources under the given subscription. - - Retrieves the properties of all Managed CCF. - - :param filter: The filter to apply on the list operation. eg. $filter=ledgerType eq 'Public'. - Default value is None. - :type filter: str - :return: An iterator like instance of either ManagedCCF or the result of cls(response) - :rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.confidentialledger.models.ManagedCCF] - :raises ~azure.core.exceptions.HttpResponseError: - """ - _headers = kwargs.pop("headers", {}) or {} - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - cls: ClsType[_models.ManagedCCFList] = kwargs.pop("cls", None) - - error_map: MutableMapping = { - 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, - filter=filter, - 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._config.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("ManagedCCFList", 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 _backup_initial( - self, - resource_group_name: str, - app_name: str, - managed_ccf: Union[_models.ManagedCCFBackup, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(managed_ccf, (IOBase, bytes)): - _content = managed_ccf - else: - _json = self._serialize.body(managed_ccf, "ManagedCCFBackup") - - _request = build_backup_request( - resource_group_name=resource_group_name, - app_name=app_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, 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_backup( - self, - resource_group_name: str, - app_name: str, - managed_ccf: _models.ManagedCCFBackup, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ManagedCCFBackupResponse]: - """Performs the backup operation on a Managed CCF Resource. - - Backs up a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Backup Request Body. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCFBackup - :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 ManagedCCFBackupResponse or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFBackupResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_backup( - self, - resource_group_name: str, - app_name: str, - managed_ccf: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ManagedCCFBackupResponse]: - """Performs the backup operation on a Managed CCF Resource. - - Backs up a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Backup Request Body. Required. - :type managed_ccf: IO[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 ManagedCCFBackupResponse or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFBackupResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_backup( - self, - resource_group_name: str, - app_name: str, - managed_ccf: Union[_models.ManagedCCFBackup, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.ManagedCCFBackupResponse]: - """Performs the backup operation on a Managed CCF Resource. - - Backs up a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Backup Request Body. Is either a ManagedCCFBackup type or a - IO[bytes] type. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCFBackup or IO[bytes] - :return: An instance of LROPoller that returns either ManagedCCFBackupResponse or the result of - cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFBackupResponse] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ManagedCCFBackupResponse] = 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._backup_initial( - resource_group_name=resource_group_name, - app_name=app_name, - managed_ccf=managed_ccf, - 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("ManagedCCFBackupResponse", 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.ManagedCCFBackupResponse].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.ManagedCCFBackupResponse]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) - - def _restore_initial( - self, - resource_group_name: str, - app_name: str, - managed_ccf: Union[_models.ManagedCCFRestore, IO[bytes]], - **kwargs: Any - ) -> Iterator[bytes]: - error_map: MutableMapping = { - 401: ClientAuthenticationError, - 404: ResourceNotFoundError, - 409: ResourceExistsError, - 304: ResourceNotModifiedError, - } - error_map.update(kwargs.pop("error_map", {}) or {}) - - _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {}) - _params = case_insensitive_dict(kwargs.pop("params", {}) or {}) - - api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._config.api_version)) - 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(managed_ccf, (IOBase, bytes)): - _content = managed_ccf - else: - _json = self._serialize.body(managed_ccf, "ManagedCCFRestore") - - _request = build_restore_request( - resource_group_name=resource_group_name, - app_name=app_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, 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_restore( - self, - resource_group_name: str, - app_name: str, - managed_ccf: _models.ManagedCCFRestore, - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ManagedCCFRestoreResponse]: - """Performs the restore operation to spin up a newly restored Managed CCF Resource. - - Restores a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Restore Request Body. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCFRestore - :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 ManagedCCFRestoreResponse or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFRestoreResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @overload - def begin_restore( - self, - resource_group_name: str, - app_name: str, - managed_ccf: IO[bytes], - *, - content_type: str = "application/json", - **kwargs: Any - ) -> LROPoller[_models.ManagedCCFRestoreResponse]: - """Performs the restore operation to spin up a newly restored Managed CCF Resource. - - Restores a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Restore Request Body. Required. - :type managed_ccf: IO[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 ManagedCCFRestoreResponse or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFRestoreResponse] - :raises ~azure.core.exceptions.HttpResponseError: - """ - - @distributed_trace - def begin_restore( - self, - resource_group_name: str, - app_name: str, - managed_ccf: Union[_models.ManagedCCFRestore, IO[bytes]], - **kwargs: Any - ) -> LROPoller[_models.ManagedCCFRestoreResponse]: - """Performs the restore operation to spin up a newly restored Managed CCF Resource. - - Restores a Managed CCF Resource. - - :param resource_group_name: The name of the resource group. The name is case insensitive. - Required. - :type resource_group_name: str - :param app_name: Name of the Managed CCF. Required. - :type app_name: str - :param managed_ccf: Managed CCF Restore Request Body. Is either a ManagedCCFRestore type or a - IO[bytes] type. Required. - :type managed_ccf: ~azure.mgmt.confidentialledger.models.ManagedCCFRestore or IO[bytes] - :return: An instance of LROPoller that returns either ManagedCCFRestoreResponse or the result - of cls(response) - :rtype: - ~azure.core.polling.LROPoller[~azure.mgmt.confidentialledger.models.ManagedCCFRestoreResponse] - :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._config.api_version)) - content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None)) - cls: ClsType[_models.ManagedCCFRestoreResponse] = 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._restore_initial( - resource_group_name=resource_group_name, - app_name=app_name, - managed_ccf=managed_ccf, - 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("ManagedCCFRestoreResponse", 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.ManagedCCFRestoreResponse].from_continuation_token( - polling_method=polling_method, - continuation_token=cont_token, - client=self._client, - deserialization_callback=get_long_running_output, - ) - return LROPoller[_models.ManagedCCFRestoreResponse]( - self._client, raw_result, get_long_running_output, polling_method # type: ignore - ) diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_operations.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_operations.py index 89f5a36d481c..e8d43d074b3b 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_operations.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/operations/_operations.py @@ -6,7 +6,7 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- from collections.abc import MutableMapping -from typing import Any, Callable, Dict, Iterable, Optional, TypeVar +from typing import Any, Callable, Optional, TypeVar import urllib.parse from azure.core import PipelineClient @@ -30,7 +30,8 @@ from .._utils.serialization import Deserializer, Serializer T = TypeVar("T") -ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]] +ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, dict[str, Any]], Any]] +List = list _SERIALIZER = Serializer() _SERIALIZER.client_side_validation = False @@ -40,7 +41,7 @@ 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", "2024-09-19-preview")) + api_version: str = kwargs.pop("api_version", _params.pop("api-version", "2022-05-13")) accept = _headers.pop("Accept", "application/json") # Construct URL @@ -67,7 +68,7 @@ class Operations: models = _models - def __init__(self, *args, **kwargs): + def __init__(self, *args, **kwargs) -> None: input_args = list(args) self._client: PipelineClient = input_args.pop(0) if input_args else kwargs.pop("client") self._config: ConfidentialLedgerConfiguration = input_args.pop(0) if input_args else kwargs.pop("config") @@ -75,7 +76,7 @@ def __init__(self, *args, **kwargs): self._deserialize: Deserializer = input_args.pop(0) if input_args else kwargs.pop("deserializer") @distributed_trace - def list(self, **kwargs: Any) -> Iterable["_models.ResourceProviderOperationDefinition"]: + def list(self, **kwargs: Any) -> ItemPaged["_models.ResourceProviderOperationDefinition"]: """Retrieves a list of available API operations under this Resource Provider. Retrieves a list of available API operations. @@ -145,7 +146,10 @@ def get_next(next_link=None): if response.status_code not in [200]: map_error(status_code=response.status_code, response=response, error_map=error_map) - error = self._deserialize.failsafe_deserialize(_models.ErrorResponse, pipeline_response) + error = self._deserialize.failsafe_deserialize( + _models.ErrorResponse, + pipeline_response, + ) raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat) return pipeline_response diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/check_name_availability.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/check_name_availability.py index 3f1377fef8e3..b158619f7813 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/check_name_availability.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/check_name_availability.py @@ -37,6 +37,6 @@ def main(): print(response) -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/CheckNameAvailability.json +# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/stable/2022-05-13/examples/CheckNameAvailability.json if __name__ == "__main__": main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_backup.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_backup.py deleted file mode 100644 index 599e47b79f67..000000000000 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_backup.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# 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 azure.identity import DefaultAzureCredential - -from azure.mgmt.confidentialledger import ConfidentialLedger - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-confidentialledger -# USAGE - python confidential_ledger_backup.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = ConfidentialLedger( - credential=DefaultAzureCredential(), - subscription_id="0000000-0000-0000-0000-000000000001", - ) - - response = client.ledger.begin_backup( - resource_group_name="DummyResourceGroupName", - ledger_name="DummyLedgerName", - confidential_ledger={"restoreRegion": "EastUS", "uri": "DummySASUri"}, - ).result() - print(response) - - -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Backup.json -if __name__ == "__main__": - main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_create.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_create.py index 361979130c57..02230c5dfa13 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_create.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_create.py @@ -50,14 +50,7 @@ def main(): "ledgerRoleName": "Reader", } ], - "hostLevel": "Info", - "ledgerSku": "Standard", "ledgerType": "Public", - "maxBodySizeInMb": 1, - "nodeCount": 3, - "subjectName": "CN=CCF Node", - "workerThreads": 0, - "writeLBAddressPrefix": "write", }, "tags": {"additionalProps1": "additional properties"}, }, @@ -65,6 +58,6 @@ def main(): print(response) -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Create.json +# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/stable/2022-05-13/examples/ConfidentialLedger_Create.json if __name__ == "__main__": main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_delete.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_delete.py index 5dbca06428b8..e9d401706107 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_delete.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_delete.py @@ -37,6 +37,6 @@ def main(): ).result() -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Delete.json +# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/stable/2022-05-13/examples/ConfidentialLedger_Delete.json if __name__ == "__main__": main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_get.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_get.py index 3bddfb2fddac..a5065ab04d42 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_get.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_get.py @@ -38,6 +38,6 @@ def main(): print(response) -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Get.json +# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/stable/2022-05-13/examples/ConfidentialLedger_Get.json if __name__ == "__main__": main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_list.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_list.py index c86ccdeafb7a..a1cbdf1377e0 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_list.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_list.py @@ -38,6 +38,6 @@ def main(): print(item) -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_List.json +# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/stable/2022-05-13/examples/ConfidentialLedger_List.json if __name__ == "__main__": main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_list_by_sub.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_list_by_sub.py index 1d30e0496b3f..c829eab3b6d6 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_list_by_sub.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_list_by_sub.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_ListBySub.json +# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/stable/2022-05-13/examples/ConfidentialLedger_ListBySub.json if __name__ == "__main__": main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_restore.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_restore.py deleted file mode 100644 index 727165a79d21..000000000000 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_restore.py +++ /dev/null @@ -1,44 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# 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 azure.identity import DefaultAzureCredential - -from azure.mgmt.confidentialledger import ConfidentialLedger - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-confidentialledger -# USAGE - python confidential_ledger_restore.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = ConfidentialLedger( - credential=DefaultAzureCredential(), - subscription_id="0000000-0000-0000-0000-000000000001", - ) - - response = client.ledger.begin_restore( - resource_group_name="DummyResourceGroupName", - ledger_name="DummyLedgerName", - confidential_ledger={"fileShareName": "DummyFileShareName", "restoreRegion": "EastUS", "uri": "DummySASUri"}, - ).result() - print(response) - - -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Restore.json -if __name__ == "__main__": - main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_update.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_update.py index 25211be0e327..c5a2d5938635 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_update.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/confidential_ledger_update.py @@ -58,6 +58,6 @@ def main(): print(response) -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ConfidentialLedger_Update.json +# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/stable/2022-05-13/examples/ConfidentialLedger_Update.json if __name__ == "__main__": main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_delete.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_delete.py deleted file mode 100644 index d2a3f0f54138..000000000000 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_delete.py +++ /dev/null @@ -1,42 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# 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 azure.identity import DefaultAzureCredential - -from azure.mgmt.confidentialledger import ConfidentialLedger - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-confidentialledger -# USAGE - python managed_ccf_delete.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = ConfidentialLedger( - credential=DefaultAzureCredential(), - subscription_id="0000000-0000-0000-0000-000000000001", - ) - - client.managed_ccf.begin_delete( - resource_group_name="DummyResourceGroupName", - app_name="DummyMccfAppName", - ).result() - - -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Delete.json -if __name__ == "__main__": - main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_get.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_get.py deleted file mode 100644 index 6eb1bfbf5e80..000000000000 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_get.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# 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 azure.identity import DefaultAzureCredential - -from azure.mgmt.confidentialledger import ConfidentialLedger - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-confidentialledger -# USAGE - python managed_ccf_get.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = ConfidentialLedger( - credential=DefaultAzureCredential(), - subscription_id="0000000-0000-0000-0000-000000000001", - ) - - response = client.managed_ccf.get( - resource_group_name="DummyResourceGroupName", - app_name="DummyMccfAppName", - ) - print(response) - - -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_Get.json -if __name__ == "__main__": - main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_list.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_list.py deleted file mode 100644 index 529a3390df7c..000000000000 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_list.py +++ /dev/null @@ -1,43 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# 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 azure.identity import DefaultAzureCredential - -from azure.mgmt.confidentialledger import ConfidentialLedger - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-confidentialledger -# USAGE - python managed_ccf_list.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = ConfidentialLedger( - credential=DefaultAzureCredential(), - subscription_id="0000000-0000-0000-0000-000000000001", - ) - - response = client.managed_ccf.list_by_resource_group( - resource_group_name="DummyResourceGroupName", - ) - for item in response: - print(item) - - -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_List.json -if __name__ == "__main__": - main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_list_by_sub.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_list_by_sub.py deleted file mode 100644 index e8d5528ff396..000000000000 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/managed_ccf_list_by_sub.py +++ /dev/null @@ -1,41 +0,0 @@ -# pylint: disable=line-too-long,useless-suppression -# 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 azure.identity import DefaultAzureCredential - -from azure.mgmt.confidentialledger import ConfidentialLedger - -""" -# PREREQUISITES - pip install azure-identity - pip install azure-mgmt-confidentialledger -# USAGE - python managed_ccf_list_by_sub.py - - Before run the sample, please set the values of the client ID, tenant ID and client secret - of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID, - AZURE_CLIENT_SECRET. For more info about how to get the value, please see: - https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal -""" - - -def main(): - client = ConfidentialLedger( - credential=DefaultAzureCredential(), - subscription_id="0000000-0000-0000-0000-000000000001", - ) - - response = client.managed_ccf.list_by_subscription() - for item in response: - print(item) - - -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/ManagedCCF_ListBySub.json -if __name__ == "__main__": - main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/operations_get.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/operations_get.py index a563f7929889..9bdf7fcadb09 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/operations_get.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_samples/operations_get.py @@ -36,6 +36,6 @@ def main(): print(item) -# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/preview/2024-09-19-preview/examples/Operations_Get.json +# x-ms-original-file: specification/confidentialledger/resource-manager/Microsoft.ConfidentialLedger/stable/2022-05-13/examples/Operations_Get.json if __name__ == "__main__": main() diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger.py index ebdce62f1d47..09a7e90b2533 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger.py @@ -23,7 +23,7 @@ def setup_method(self, method): def test_check_name_availability(self, resource_group): response = self.client.check_name_availability( name_availability_request={"name": "str", "type": "str"}, - api_version="2024-09-19-preview", + api_version="2022-05-13", ) # please add some check logic here by yourself diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_async.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_async.py index 2d88042d2211..c4a4619dccbc 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_async.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_async.py @@ -24,7 +24,7 @@ def setup_method(self, method): async def test_check_name_availability(self, resource_group): response = await self.client.check_name_availability( name_availability_request={"name": "str", "type": "str"}, - api_version="2024-09-19-preview", + api_version="2022-05-13", ) # please add some check logic here by yourself diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_ledger_operations.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_ledger_operations.py index 0191db7231bb..a8f01cc69866 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_ledger_operations.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_ledger_operations.py @@ -24,7 +24,7 @@ def test_ledger_get(self, resource_group): response = self.client.ledger.get( resource_group_name=resource_group.name, ledger_name="str", - api_version="2024-09-19-preview", + api_version="2022-05-13", ) # please add some check logic here by yourself @@ -36,7 +36,7 @@ def test_ledger_begin_delete(self, resource_group): response = self.client.ledger.begin_delete( resource_group_name=resource_group.name, ledger_name="str", - api_version="2024-09-19-preview", + api_version="2022-05-13", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself @@ -49,28 +49,18 @@ def test_ledger_begin_create(self, resource_group): resource_group_name=resource_group.name, ledger_name="str", confidential_ledger={ - "location": "str", "id": "str", + "location": "str", "name": "str", "properties": { "aadBasedSecurityPrincipals": [{"ledgerRoleName": "str", "principalId": "str", "tenantId": "str"}], - "applicationType": "str", "certBasedSecurityPrincipals": [{"cert": "str", "ledgerRoleName": "str"}], - "enclavePlatform": "str", - "hostLevel": "str", "identityServiceUri": "str", "ledgerInternalNamespace": "str", "ledgerName": "str", - "ledgerSku": "str", "ledgerType": "str", "ledgerUri": "str", - "maxBodySizeInMb": 0, - "nodeCount": 0, "provisioningState": "str", - "runningState": "str", - "subjectName": "str", - "workerThreads": 0, - "writeLBAddressPrefix": "str", }, "systemData": { "createdAt": "2020-02-20 00:00:00", @@ -83,7 +73,7 @@ def test_ledger_begin_create(self, resource_group): "tags": {"str": "str"}, "type": "str", }, - api_version="2024-09-19-preview", + api_version="2022-05-13", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself @@ -96,28 +86,18 @@ def test_ledger_begin_update(self, resource_group): resource_group_name=resource_group.name, ledger_name="str", confidential_ledger={ - "location": "str", "id": "str", + "location": "str", "name": "str", "properties": { "aadBasedSecurityPrincipals": [{"ledgerRoleName": "str", "principalId": "str", "tenantId": "str"}], - "applicationType": "str", "certBasedSecurityPrincipals": [{"cert": "str", "ledgerRoleName": "str"}], - "enclavePlatform": "str", - "hostLevel": "str", "identityServiceUri": "str", "ledgerInternalNamespace": "str", "ledgerName": "str", - "ledgerSku": "str", "ledgerType": "str", "ledgerUri": "str", - "maxBodySizeInMb": 0, - "nodeCount": 0, "provisioningState": "str", - "runningState": "str", - "subjectName": "str", - "workerThreads": 0, - "writeLBAddressPrefix": "str", }, "systemData": { "createdAt": "2020-02-20 00:00:00", @@ -130,7 +110,7 @@ def test_ledger_begin_update(self, resource_group): "tags": {"str": "str"}, "type": "str", }, - api_version="2024-09-19-preview", + api_version="2022-05-13", ).result() # call '.result()' to poll until service return final result # please add some check logic here by yourself @@ -141,7 +121,7 @@ def test_ledger_begin_update(self, resource_group): def test_ledger_list_by_resource_group(self, resource_group): response = self.client.ledger.list_by_resource_group( resource_group_name=resource_group.name, - api_version="2024-09-19-preview", + api_version="2022-05-13", ) result = [r for r in response] # please add some check logic here by yourself @@ -151,34 +131,8 @@ def test_ledger_list_by_resource_group(self, resource_group): @recorded_by_proxy def test_ledger_list_by_subscription(self, resource_group): response = self.client.ledger.list_by_subscription( - api_version="2024-09-19-preview", + api_version="2022-05-13", ) result = [r for r in response] # please add some check logic here by yourself # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_ledger_begin_backup(self, resource_group): - response = self.client.ledger.begin_backup( - resource_group_name=resource_group.name, - ledger_name="str", - confidential_ledger={"uri": "str", "restoreRegion": "str"}, - api_version="2024-09-19-preview", - ).result() # call '.result()' to poll until service return final result - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy - def test_ledger_begin_restore(self, resource_group): - response = self.client.ledger.begin_restore( - resource_group_name=resource_group.name, - ledger_name="str", - confidential_ledger={"fileShareName": "str", "restoreRegion": "str", "uri": "str"}, - api_version="2024-09-19-preview", - ).result() # call '.result()' to poll until service return final result - - # please add some check logic here by yourself - # ... diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_ledger_operations_async.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_ledger_operations_async.py index 943118c3c36c..864538b145e5 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_ledger_operations_async.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_ledger_operations_async.py @@ -25,7 +25,7 @@ async def test_ledger_get(self, resource_group): response = await self.client.ledger.get( resource_group_name=resource_group.name, ledger_name="str", - api_version="2024-09-19-preview", + api_version="2022-05-13", ) # please add some check logic here by yourself @@ -38,7 +38,7 @@ async def test_ledger_begin_delete(self, resource_group): await self.client.ledger.begin_delete( resource_group_name=resource_group.name, ledger_name="str", - api_version="2024-09-19-preview", + api_version="2022-05-13", ) ).result() # call '.result()' to poll until service return final result @@ -53,30 +53,20 @@ async def test_ledger_begin_create(self, resource_group): resource_group_name=resource_group.name, ledger_name="str", confidential_ledger={ - "location": "str", "id": "str", + "location": "str", "name": "str", "properties": { "aadBasedSecurityPrincipals": [ {"ledgerRoleName": "str", "principalId": "str", "tenantId": "str"} ], - "applicationType": "str", "certBasedSecurityPrincipals": [{"cert": "str", "ledgerRoleName": "str"}], - "enclavePlatform": "str", - "hostLevel": "str", "identityServiceUri": "str", "ledgerInternalNamespace": "str", "ledgerName": "str", - "ledgerSku": "str", "ledgerType": "str", "ledgerUri": "str", - "maxBodySizeInMb": 0, - "nodeCount": 0, "provisioningState": "str", - "runningState": "str", - "subjectName": "str", - "workerThreads": 0, - "writeLBAddressPrefix": "str", }, "systemData": { "createdAt": "2020-02-20 00:00:00", @@ -89,7 +79,7 @@ async def test_ledger_begin_create(self, resource_group): "tags": {"str": "str"}, "type": "str", }, - api_version="2024-09-19-preview", + api_version="2022-05-13", ) ).result() # call '.result()' to poll until service return final result @@ -104,30 +94,20 @@ async def test_ledger_begin_update(self, resource_group): resource_group_name=resource_group.name, ledger_name="str", confidential_ledger={ - "location": "str", "id": "str", + "location": "str", "name": "str", "properties": { "aadBasedSecurityPrincipals": [ {"ledgerRoleName": "str", "principalId": "str", "tenantId": "str"} ], - "applicationType": "str", "certBasedSecurityPrincipals": [{"cert": "str", "ledgerRoleName": "str"}], - "enclavePlatform": "str", - "hostLevel": "str", "identityServiceUri": "str", "ledgerInternalNamespace": "str", "ledgerName": "str", - "ledgerSku": "str", "ledgerType": "str", "ledgerUri": "str", - "maxBodySizeInMb": 0, - "nodeCount": 0, "provisioningState": "str", - "runningState": "str", - "subjectName": "str", - "workerThreads": 0, - "writeLBAddressPrefix": "str", }, "systemData": { "createdAt": "2020-02-20 00:00:00", @@ -140,7 +120,7 @@ async def test_ledger_begin_update(self, resource_group): "tags": {"str": "str"}, "type": "str", }, - api_version="2024-09-19-preview", + api_version="2022-05-13", ) ).result() # call '.result()' to poll until service return final result @@ -152,7 +132,7 @@ async def test_ledger_begin_update(self, resource_group): async def test_ledger_list_by_resource_group(self, resource_group): response = self.client.ledger.list_by_resource_group( resource_group_name=resource_group.name, - api_version="2024-09-19-preview", + api_version="2022-05-13", ) result = [r async for r in response] # please add some check logic here by yourself @@ -162,38 +142,8 @@ async def test_ledger_list_by_resource_group(self, resource_group): @recorded_by_proxy_async async def test_ledger_list_by_subscription(self, resource_group): response = self.client.ledger.list_by_subscription( - api_version="2024-09-19-preview", + api_version="2022-05-13", ) result = [r async for r in response] # please add some check logic here by yourself # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_ledger_begin_backup(self, resource_group): - response = await ( - await self.client.ledger.begin_backup( - resource_group_name=resource_group.name, - ledger_name="str", - confidential_ledger={"uri": "str", "restoreRegion": "str"}, - api_version="2024-09-19-preview", - ) - ).result() # call '.result()' to poll until service return final result - - # please add some check logic here by yourself - # ... - - @RandomNameResourceGroupPreparer(location=AZURE_LOCATION) - @recorded_by_proxy_async - async def test_ledger_begin_restore(self, resource_group): - response = await ( - await self.client.ledger.begin_restore( - resource_group_name=resource_group.name, - ledger_name="str", - confidential_ledger={"fileShareName": "str", "restoreRegion": "str", "uri": "str"}, - api_version="2024-09-19-preview", - ) - ).result() # call '.result()' to poll until service return final result - - # please add some check logic here by yourself - # ... diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_operations.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_operations.py index 57d25840f729..8a3fbdff0ab5 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_operations.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_operations.py @@ -22,7 +22,7 @@ def setup_method(self, method): @recorded_by_proxy def test_operations_list(self, resource_group): response = self.client.operations.list( - api_version="2024-09-19-preview", + api_version="2022-05-13", ) result = [r for r in response] # please add some check logic here by yourself diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_operations_async.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_operations_async.py index ed5cd2fb41ed..71c219629cc4 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_operations_async.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/generated_tests/test_confidential_ledger_operations_async.py @@ -23,7 +23,7 @@ def setup_method(self, method): @recorded_by_proxy_async async def test_operations_list(self, resource_group): response = self.client.operations.list( - api_version="2024-09-19-preview", + api_version="2022-05-13", ) result = [r async for r in response] # please add some check logic here by yourself diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/pyproject.toml b/sdk/confidentialledger/azure-mgmt-confidentialledger/pyproject.toml index 540da07d41af..ad5ed67aed62 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/pyproject.toml +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/pyproject.toml @@ -1,6 +1,88 @@ +[build-system] +requires = [ + "setuptools>=77.0.3", + "wheel", +] +build-backend = "setuptools.build_meta" + +[project] +name = "azure-mgmt-confidentialledger" +authors = [ + { name = "Microsoft Corporation", email = "azpysdkhelp@microsoft.com" }, +] +description = "Microsoft Azure Confidentialledger Management Client Library for Python" +license = "MIT" +classifiers = [ + "Development Status :: 5 - Production/Stable", + "Programming Language :: Python", + "Programming Language :: Python :: 3 :: Only", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", +] +requires-python = ">=3.9" +keywords = [ + "azure", + "azure sdk", +] +dependencies = [ + "isodate>=0.6.1", + "azure-mgmt-core>=1.6.0", + "typing-extensions>=4.6.0", +] +dynamic = [ + "version", + "readme", +] + +[project.urls] +repository = "https://github.com/Azure/azure-sdk-for-python" + +[tool.setuptools.dynamic.version] +attr = "azure.mgmt.confidentialledger._version.VERSION" + +[tool.setuptools.dynamic.readme] +file = [ + "README.md", + "CHANGELOG.md", +] +content-type = "text/markdown" + +[tool.setuptools.packages.find] +exclude = [ + "tests*", + "generated_tests*", + "samples*", + "generated_samples*", + "doc*", + "azure", + "azure.mgmt", +] + +[tool.setuptools.package-data] +pytyped = [ + "py.typed", +] + [tool.azure-sdk-build] breaking = false mypy = false pyright = false type_check_samples = false verifytypes = false + +[packaging] +package_name = "azure-mgmt-confidentialledger" +package_nspkg = "azure-mgmt-nspkg" +package_pprint_name = "Confidential Ledger Management" +package_doc_id = "" +is_stable = true +is_arm = true +need_msrestazure = false +need_azuremgmtcore = true +title = "ConfidentialLedger" +sample_link = "" +exclude_folders = "" diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/sdk_packaging.toml b/sdk/confidentialledger/azure-mgmt-confidentialledger/sdk_packaging.toml deleted file mode 100644 index b376e12d5691..000000000000 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/sdk_packaging.toml +++ /dev/null @@ -1,10 +0,0 @@ -[packaging] -package_name = "azure-mgmt-confidentialledger" -package_nspkg = "azure-mgmt-nspkg" -package_pprint_name = "Confidential Ledger Management" -package_doc_id = "" -is_stable = false -is_arm = true -need_msrestazure = false -need_azuremgmtcore = true -title = "ConfidentialLedger" \ No newline at end of file diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/setup.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/setup.py deleted file mode 100644 index 120c77112c08..000000000000 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/setup.py +++ /dev/null @@ -1,82 +0,0 @@ -#!/usr/bin/env python - -# ------------------------------------------------------------------------- -# Copyright (c) Microsoft Corporation. All rights reserved. -# Licensed under the MIT License. See License.txt in the project root for -# license information. -# -------------------------------------------------------------------------- - -import re -import os.path -from io import open -from setuptools import find_packages, setup - -# Change the PACKAGE_NAME only to change folder and different name -PACKAGE_NAME = "azure-mgmt-confidentialledger" -PACKAGE_PPRINT_NAME = "Confidential Ledger Management" - -# a-b-c => a/b/c -package_folder_path = PACKAGE_NAME.replace("-", "/") -# a-b-c => a.b.c -namespace_name = PACKAGE_NAME.replace("-", ".") - -# 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"), - "r", -) as fd: - version = re.search(r'^VERSION\s*=\s*[\'"]([^\'"]*)[\'"]', fd.read(), re.MULTILINE).group(1) - -if not version: - raise RuntimeError("Cannot find version information") - -with open("README.md", encoding="utf-8") as f: - readme = f.read() -with open("CHANGELOG.md", encoding="utf-8") as f: - changelog = f.read() - -setup( - name=PACKAGE_NAME, - version=version, - description="Microsoft Azure {} Client Library for Python".format(PACKAGE_PPRINT_NAME), - long_description=readme + "\n\n" + changelog, - long_description_content_type="text/markdown", - license="MIT License", - author="Microsoft Corporation", - author_email="azpysdkhelp@microsoft.com", - url="https://github.com/Azure/azure-sdk-for-python", - keywords="azure, azure sdk", # update with search keywords relevant to the azure service / product - classifiers=[ - "Development Status :: 4 - Beta", - "Programming Language :: Python", - "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", - "Programming Language :: Python :: 3.12", - "License :: OSI Approved :: MIT License", - ], - zip_safe=False, - packages=find_packages( - exclude=[ - "tests", - # Exclude packages that will be covered by PEP420 or nspkg - "azure", - "azure.mgmt", - ] - ), - include_package_data=True, - package_data={ - "pytyped": ["py.typed"], - }, - install_requires=[ - "isodate>=0.6.1", - "typing-extensions>=4.6.0", - "azure-common>=1.1", - "azure-mgmt-core>=1.5.0", - ], - python_requires=">=3.9", -) From 6699b4f9805c52ba9f9ca4e1d1089098cde65232 Mon Sep 17 00:00:00 2001 From: Yuchao Yan Date: Thu, 7 May 2026 02:01:33 +0000 Subject: [PATCH 2/2] update changelog --- .../azure-mgmt-confidentialledger/CHANGELOG.md | 6 ++++-- .../azure/mgmt/confidentialledger/_version.py | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/CHANGELOG.md b/sdk/confidentialledger/azure-mgmt-confidentialledger/CHANGELOG.md index 5c13d9156262..b80144c5de99 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/CHANGELOG.md +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/CHANGELOG.md @@ -1,8 +1,10 @@ # Release History -## 1.1.0 (2026-05-07) +## 1.0.1 (2026-05-07) -skip changelog generation +### Other Changes + + - Regenerated code with latest code generator tool ## 2.0.0b5 (2025-05-19) diff --git a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_version.py b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_version.py index 59deb8c7263b..961c76eb77c1 100644 --- a/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_version.py +++ b/sdk/confidentialledger/azure-mgmt-confidentialledger/azure/mgmt/confidentialledger/_version.py @@ -6,4 +6,4 @@ # Changes may cause incorrect behavior and will be lost if the code is regenerated. # -------------------------------------------------------------------------- -VERSION = "1.1.0" +VERSION = "1.0.1"