Skip to content

Commit

Permalink
CodeGen from PR 14309 in Azure/azure-rest-api-specs
Browse files Browse the repository at this point in the history
Adding backupUsageSummaries API in 2018-12-20 version[Passive stamp] (Azure#14309)

* Adding backupUsageSummaries API in 2018-12-20 version[Passive stamp]

* Adding example

* Adding example

* Adding default error response

* Fixing operationId

* Revert "Fixing operationId"

This reverts commit f7327d7ebe465621808988d5fd32fda81255521d.

* Fixing operationId for getbackupusageSummaries

* Adding nextLink

* Adding nextLink in definition

* Update

* Reverting nextLink
  • Loading branch information
SDKAuto committed May 19, 2021
1 parent fc6a51d commit 0724236
Show file tree
Hide file tree
Showing 8 changed files with 277 additions and 1 deletion.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"autorest": "3.4.2",
"use": "@autorest/python@5.6.6",
"commit": "fc5e2fbcfc3f585d38bdb1c513ce1ad2c570cf3d",
"commit": "5d617cf399806989dc17934ef5ca38f5545e8175",
"repository_url": "https://github.com/Azure/azure-rest-api-specs",
"autorest_command": "autorest specification/recoveryservicesbackup/resource-manager/readme.md --multiapi --python --python-mode=update --python-sdks-folder=/home/vsts/work/1/s/azure-sdk-for-python/sdk --track2 --use=@autorest/python@5.6.6 --version=3.4.2",
"readme": "specification/recoveryservicesbackup/resource-manager/readme.md"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,7 @@
"backup_protection_containers": "BackupProtectionContainersOperations",
"security_pins": "SecurityPINsOperations",
"recovery_points_recommended_for_move": "RecoveryPointsRecommendedForMoveOperations",
"backup_usage_summaries_crr": "BackupUsageSummariesCRROperations",
"aad_properties": "AadPropertiesOperations",
"cross_region_restore": "CrossRegionRestoreOperations",
"backup_crr_job_details": "BackupCrrJobDetailsOperations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@
from .operations import BackupProtectionContainersOperations
from .operations import SecurityPINsOperations
from .operations import RecoveryPointsRecommendedForMoveOperations
from .operations import BackupUsageSummariesCRROperations
from .operations import AadPropertiesOperations
from .operations import CrossRegionRestoreOperations
from .operations import BackupCrrJobDetailsOperations
Expand Down Expand Up @@ -161,6 +162,8 @@ class RecoveryServicesBackupClient(RecoveryServicesBackupClientOperationsMixin):
:vartype security_pins: azure.mgmt.recoveryservicesbackup.operations.SecurityPINsOperations
:ivar recovery_points_recommended_for_move: RecoveryPointsRecommendedForMoveOperations operations
:vartype recovery_points_recommended_for_move: azure.mgmt.recoveryservicesbackup.operations.RecoveryPointsRecommendedForMoveOperations
:ivar backup_usage_summaries_crr: BackupUsageSummariesCRROperations operations
:vartype backup_usage_summaries_crr: azure.mgmt.recoveryservicesbackup.operations.BackupUsageSummariesCRROperations
:ivar aad_properties: AadPropertiesOperations operations
:vartype aad_properties: azure.mgmt.recoveryservicesbackup.operations.AadPropertiesOperations
:ivar cross_region_restore: CrossRegionRestoreOperations operations
Expand Down Expand Up @@ -289,6 +292,8 @@ def __init__(
self._client, self._config, self._serialize, self._deserialize)
self.recovery_points_recommended_for_move = RecoveryPointsRecommendedForMoveOperations(
self._client, self._config, self._serialize, self._deserialize)
self.backup_usage_summaries_crr = BackupUsageSummariesCRROperations(
self._client, self._config, self._serialize, self._deserialize)
self.aad_properties = AadPropertiesOperations(
self._client, self._config, self._serialize, self._deserialize)
self.cross_region_restore = CrossRegionRestoreOperations(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@
from .operations import BackupProtectionContainersOperations
from .operations import SecurityPINsOperations
from .operations import RecoveryPointsRecommendedForMoveOperations
from .operations import BackupUsageSummariesCRROperations
from .operations import AadPropertiesOperations
from .operations import CrossRegionRestoreOperations
from .operations import BackupCrrJobDetailsOperations
Expand Down Expand Up @@ -159,6 +160,8 @@ class RecoveryServicesBackupClient(RecoveryServicesBackupClientOperationsMixin):
:vartype security_pins: azure.mgmt.recoveryservicesbackup.aio.operations.SecurityPINsOperations
:ivar recovery_points_recommended_for_move: RecoveryPointsRecommendedForMoveOperations operations
:vartype recovery_points_recommended_for_move: azure.mgmt.recoveryservicesbackup.aio.operations.RecoveryPointsRecommendedForMoveOperations
:ivar backup_usage_summaries_crr: BackupUsageSummariesCRROperations operations
:vartype backup_usage_summaries_crr: azure.mgmt.recoveryservicesbackup.aio.operations.BackupUsageSummariesCRROperations
:ivar aad_properties: AadPropertiesOperations operations
:vartype aad_properties: azure.mgmt.recoveryservicesbackup.aio.operations.AadPropertiesOperations
:ivar cross_region_restore: CrossRegionRestoreOperations operations
Expand Down Expand Up @@ -286,6 +289,8 @@ def __init__(
self._client, self._config, self._serialize, self._deserialize)
self.recovery_points_recommended_for_move = RecoveryPointsRecommendedForMoveOperations(
self._client, self._config, self._serialize, self._deserialize)
self.backup_usage_summaries_crr = BackupUsageSummariesCRROperations(
self._client, self._config, self._serialize, self._deserialize)
self.aad_properties = AadPropertiesOperations(
self._client, self._config, self._serialize, self._deserialize)
self.cross_region_restore = CrossRegionRestoreOperations(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
from ._backup_protection_containers_operations import BackupProtectionContainersOperations
from ._security_pins_operations import SecurityPINsOperations
from ._recovery_points_recommended_for_move_operations import RecoveryPointsRecommendedForMoveOperations
from ._backup_usage_summaries_crr_operations import BackupUsageSummariesCRROperations
from ._aad_properties_operations import AadPropertiesOperations
from ._cross_region_restore_operations import CrossRegionRestoreOperations
from ._backup_crr_job_details_operations import BackupCrrJobDetailsOperations
Expand Down Expand Up @@ -103,6 +104,7 @@
'BackupProtectionContainersOperations',
'SecurityPINsOperations',
'RecoveryPointsRecommendedForMoveOperations',
'BackupUsageSummariesCRROperations',
'AadPropertiesOperations',
'CrossRegionRestoreOperations',
'BackupCrrJobDetailsOperations',
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from typing import Any, AsyncIterable, Callable, Dict, Generic, Optional, TypeVar
import warnings

from azure.core.async_paging import AsyncItemPaged, AsyncList
from azure.core.exceptions import ClientAuthenticationError, HttpResponseError, ResourceExistsError, ResourceNotFoundError, map_error
from azure.core.pipeline import PipelineResponse
from azure.core.pipeline.transport import AsyncHttpResponse, HttpRequest
from azure.mgmt.core.exceptions import ARMErrorFormat

from ... import models as _models

T = TypeVar('T')
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]

class BackupUsageSummariesCRROperations:
"""BackupUsageSummariesCRROperations async operations.
You should not instantiate this class directly. Instead, you should create a Client instance that
instantiates it for you and attaches it as an attribute.
:ivar models: Alias to model classes used in this operation group.
:type models: ~azure.mgmt.recoveryservicesbackup.models
:param client: Client for service requests.
:param config: Configuration of service client.
:param serializer: An object model serializer.
:param deserializer: An object model deserializer.
"""

models = _models

def __init__(self, client, config, serializer, deserializer) -> None:
self._client = client
self._serialize = serializer
self._deserialize = deserializer
self._config = config

def list(
self,
vault_name: str,
resource_group_name: str,
filter: Optional[str] = None,
skip_token: Optional[str] = None,
**kwargs
) -> AsyncIterable["_models.BackupManagementUsageList"]:
"""Fetches the backup management usage summaries of the vault.
:param vault_name: The name of the recovery services vault.
:type vault_name: str
:param resource_group_name: The name of the resource group where the recovery services vault is
present.
:type resource_group_name: str
:param filter: OData filter options.
:type filter: str
:param skip_token: skipToken Filter.
:type skip_token: str
:keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either BackupManagementUsageList or the result of cls(response)
:rtype: ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.recoveryservicesbackup.models.BackupManagementUsageList]
:raises: ~azure.core.exceptions.HttpResponseError
"""
cls = kwargs.pop('cls', None) # type: ClsType["_models.BackupManagementUsageList"]
error_map = {
401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError
}
error_map.update(kwargs.pop('error_map', {}))
api_version = "2018-12-20"
accept = "application/json"

def prepare_request(next_link=None):
# Construct headers
header_parameters = {} # type: Dict[str, Any]
header_parameters['Accept'] = self._serialize.header("accept", accept, 'str')

if not next_link:
# Construct URL
url = self.list.metadata['url'] # type: ignore
path_format_arguments = {
'vaultName': self._serialize.url("vault_name", vault_name, 'str'),
'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'),
'subscriptionId': self._serialize.url("self._config.subscription_id", self._config.subscription_id, 'str'),
}
url = self._client.format_url(url, **path_format_arguments)
# Construct parameters
query_parameters = {} # type: Dict[str, Any]
query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str')
if filter is not None:
query_parameters['$filter'] = self._serialize.query("filter", filter, 'str')
if skip_token is not None:
query_parameters['$skipToken'] = self._serialize.query("skip_token", skip_token, 'str')

request = self._client.get(url, query_parameters, header_parameters)
else:
url = next_link
query_parameters = {} # type: Dict[str, Any]
request = self._client.get(url, query_parameters, header_parameters)
return request

async def extract_data(pipeline_response):
deserialized = self._deserialize('BackupManagementUsageList', pipeline_response)
list_of_elem = deserialized.value
if cls:
list_of_elem = cls(list_of_elem)
return None, AsyncList(list_of_elem)

async def get_next(next_link=None):
request = prepare_request(next_link)

pipeline_response = await self._client._pipeline.run(request, stream=False, **kwargs)
response = pipeline_response.http_response

if response.status_code not in [200]:
error = self._deserialize.failsafe_deserialize(_models.NewErrorResponseAutoGenerated, response)
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)

return pipeline_response

return AsyncItemPaged(
get_next, extract_data
)
list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupUsageSummaries'} # type: ignore
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
from ._backup_protection_containers_operations import BackupProtectionContainersOperations
from ._security_pins_operations import SecurityPINsOperations
from ._recovery_points_recommended_for_move_operations import RecoveryPointsRecommendedForMoveOperations
from ._backup_usage_summaries_crr_operations import BackupUsageSummariesCRROperations
from ._aad_properties_operations import AadPropertiesOperations
from ._cross_region_restore_operations import CrossRegionRestoreOperations
from ._backup_crr_job_details_operations import BackupCrrJobDetailsOperations
Expand Down Expand Up @@ -103,6 +104,7 @@
'BackupProtectionContainersOperations',
'SecurityPINsOperations',
'RecoveryPointsRecommendedForMoveOperations',
'BackupUsageSummariesCRROperations',
'AadPropertiesOperations',
'CrossRegionRestoreOperations',
'BackupCrrJobDetailsOperations',
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------
from typing import TYPE_CHECKING
import warnings

from azure.core.exceptions import ClientAuthenticationError, HttpResponseError, ResourceExistsError, ResourceNotFoundError, map_error
from azure.core.paging import ItemPaged
from azure.core.pipeline import PipelineResponse
from azure.core.pipeline.transport import HttpRequest, HttpResponse
from azure.mgmt.core.exceptions import ARMErrorFormat

from .. import models as _models

if TYPE_CHECKING:
# pylint: disable=unused-import,ungrouped-imports
from typing import Any, Callable, Dict, Generic, Iterable, Optional, TypeVar

T = TypeVar('T')
ClsType = Optional[Callable[[PipelineResponse[HttpRequest, HttpResponse], T, Dict[str, Any]], Any]]

class BackupUsageSummariesCRROperations(object):
"""BackupUsageSummariesCRROperations operations.
You should not instantiate this class directly. Instead, you should create a Client instance that
instantiates it for you and attaches it as an attribute.
:ivar models: Alias to model classes used in this operation group.
:type models: ~azure.mgmt.recoveryservicesbackup.models
:param client: Client for service requests.
:param config: Configuration of service client.
:param serializer: An object model serializer.
:param deserializer: An object model deserializer.
"""

models = _models

def __init__(self, client, config, serializer, deserializer):
self._client = client
self._serialize = serializer
self._deserialize = deserializer
self._config = config

def list(
self,
vault_name, # type: str
resource_group_name, # type: str
filter=None, # type: Optional[str]
skip_token=None, # type: Optional[str]
**kwargs # type: Any
):
# type: (...) -> Iterable["_models.BackupManagementUsageList"]
"""Fetches the backup management usage summaries of the vault.
:param vault_name: The name of the recovery services vault.
:type vault_name: str
:param resource_group_name: The name of the resource group where the recovery services vault is
present.
:type resource_group_name: str
:param filter: OData filter options.
:type filter: str
:param skip_token: skipToken Filter.
:type skip_token: str
:keyword callable cls: A custom type or function that will be passed the direct response
:return: An iterator like instance of either BackupManagementUsageList or the result of cls(response)
:rtype: ~azure.core.paging.ItemPaged[~azure.mgmt.recoveryservicesbackup.models.BackupManagementUsageList]
:raises: ~azure.core.exceptions.HttpResponseError
"""
cls = kwargs.pop('cls', None) # type: ClsType["_models.BackupManagementUsageList"]
error_map = {
401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError
}
error_map.update(kwargs.pop('error_map', {}))
api_version = "2018-12-20"
accept = "application/json"

def prepare_request(next_link=None):
# Construct headers
header_parameters = {} # type: Dict[str, Any]
header_parameters['Accept'] = self._serialize.header("accept", accept, 'str')

if not next_link:
# Construct URL
url = self.list.metadata['url'] # type: ignore
path_format_arguments = {
'vaultName': self._serialize.url("vault_name", vault_name, 'str'),
'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'),
'subscriptionId': self._serialize.url("self._config.subscription_id", self._config.subscription_id, 'str'),
}
url = self._client.format_url(url, **path_format_arguments)
# Construct parameters
query_parameters = {} # type: Dict[str, Any]
query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str')
if filter is not None:
query_parameters['$filter'] = self._serialize.query("filter", filter, 'str')
if skip_token is not None:
query_parameters['$skipToken'] = self._serialize.query("skip_token", skip_token, 'str')

request = self._client.get(url, query_parameters, header_parameters)
else:
url = next_link
query_parameters = {} # type: Dict[str, Any]
request = self._client.get(url, query_parameters, header_parameters)
return request

def extract_data(pipeline_response):
deserialized = self._deserialize('BackupManagementUsageList', pipeline_response)
list_of_elem = deserialized.value
if cls:
list_of_elem = cls(list_of_elem)
return None, iter(list_of_elem)

def get_next(next_link=None):
request = prepare_request(next_link)

pipeline_response = self._client._pipeline.run(request, stream=False, **kwargs)
response = pipeline_response.http_response

if response.status_code not in [200]:
error = self._deserialize.failsafe_deserialize(_models.NewErrorResponseAutoGenerated, response)
map_error(status_code=response.status_code, response=response, error_map=error_map)
raise HttpResponseError(response=response, model=error, error_format=ARMErrorFormat)

return pipeline_response

return ItemPaged(
get_next, extract_data
)
list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupUsageSummaries'} # type: ignore

0 comments on commit 0724236

Please sign in to comment.